IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> Docker部署Nginx并热更新配置文件步骤 -> 正文阅读

[系统运维]Docker部署Nginx并热更新配置文件步骤

拉取镜像:docker pull nginx;
最基本的启动:

输入命令:docker run --name nginx -p 80:80 -d nginx
在这里插入图片描述

将nginx配置文件等映射到宿主机

在服务器上新建四个映射目录;
在这里插入图片描述

conf: 配置文件目录

www: 存储网站网页的目录

logs: 日志

cert: ssl证书存放目录;(如果要添加证书的话就创建)

将docker容器内的配置文件复制到服务器刚新建的conf文建下面nginx的映射配置文件,日后只需要修改次配置文件即可;

输入命令: docker cp nginx:/etc/nginx/nginx.conf /mydocker/nginx/conf

nginx:docker中运行ndinx容器的容器名称
/etc/nginx/nginx.conf :docker中运行ndinx容器的配置文件目录
/mydocker/nginx/conf :本服务器的文件目录

新建一个nginx的欢迎页在/nginx/www文件夹下;
Nginx 欢迎使用nginx!

在这里插入图片描述

最后重新启动nginx服务;
http启动命令:

docker run -d -p 80:80 --name nginx -v /mydocker/nginx/www:/usr/share/nginx/html -v /mydocker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /mydocker/nginx/logs:/var/log/nginx nginx

在这里插入图片描述

修改conf配置文件实现代理和负载;

	#代理配置/负载均衡
	#http配置--负载
	upstream ticket {
	    server 192.168.29.18:80 weight=2;  #设置权重为2 让更多的请求访问此服务器
		server 192.168.23.158:8080 weight=1;  #设置权重为1
	}
	#http配置--代理
	server{
	    listen        80;
		server_name   zhuangjiabang.top; #访问的域名或者本机的ip
		location /{
		    proxy_pass http://ticket;  #这里设置代理到ticket集群
		}
	}

在这里插入图片描述

https启动命令:

首先去下载ssl证书的pem和key文件,上传到新建的/mydocker/nginx/cert文件夹下面;

docker run -d -p 443:443 --name nginx -v /mydocker/nginx/www:/usr/share/nginx/html -v /mydocker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /mydocker/nginx/logs:/var/log/nginx -v /mydocker/nginx/cert:/etc/nginx/cert nginx

修改conf配置文件实现代理和负载;

具体配置参考阿里云ssl证书安装配置

#https配置
	server{
	   #配置HTTPS的默认访问端口为443。
       #如果未在此处配置HTTPS的默认访问端口,可能会造成Nginx无法启动。
       #如果您使用Nginx 1.15.0及以上版本,请使用listen 443 ssl代替listen 443和ssl on。
	   listen 443 ssl;
	   server_name zhuangjiabang.top; #需要将yourdomain替换成证书绑定的域名。
	   root html;
	   index index.html index.htm;
	   ssl_certificate /cert/zhuangjiabang_p.pem;  #需要将cert-file-name.pem替换成已上传的证书文件的名称。
       ssl_certificate_key /cert/zhuangjiabang_k.key; #需要将cert-file-name.key替换成已上传的证书私钥文件的名称。
       ssl_session_timeout 5m;
       ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
       #表示使用的加密套件的类型。
       ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3; #表示使用的TLS协议的类型。
       ssl_prefer_server_ciphers on;
	   location /{
		    proxy_pass http://ticket;  #这里设置代理到ticket集群
		}
	}
Nginx重新加载配置文件:

输入:docker exec -it nginx bash 进入nginx;
然后输入:nginx -s reload 重新加载配置文件此过成不用重启nginx容器;
在这里插入图片描述
最后输入:exit 退出容器;

如果报图中的错误是因为配置文件中少了分号。

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-03-15 23:07:58  更:2022-03-15 23:11:21 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 2:57:16-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码