Coding云

码云的愿心:希望广大程序猿朋友摘掉苦逼的昵称

服务器

docker安装nginx1.14.0

docker安装nginx1.14.0

拉取1.14.0的稳定版本(镜像版本需要去https://hub.docker.com/,在explore下查找镜像)
docker pull nginx:1.14.0

镜像拉取好了之后我们就创建运行应用所需的容器,先创建运行一个nginx容器:
docker run -itd\
  --name nginx \
  -p 80:80 \
  -p 443:443 \
  -v /alidata:/alidata \
  nginx:1.14.0

解释一下上面命令的含义:

run -itd:在docker中运行一个带交互式的且能后台运行的容器。
--name nginx:给容器命名为nginx,注意name前面有两个小横杠,你也可以自己随意命名。
-p 80:80:这里是指将容器的80端口映射到主机的80端口,冒号前面指的是主机,后面指的是容器。
-p 443:443:这里是指将容器的443端口映射到主机的443端口,冒号前面指的是主机,后面指的是容器。这里遇到大坑,服务器配置好https后,怎么都无法访问!!!这里必须把宿主机的443端口映射到nginx容器的443端口,否则就算nginx配置443访问,也无法请求到!!!
-v: 是宿主机的项目静态文件目录挂载到容器的目录下
-v: 示例表示把宿主机的/alidata 目录挂载到容器的/alidata目录下;这样容器就可以与宿主机共享alidata目录下的文件了,比如项目静态文件等。


docker cp /alidata/myDocker/nginx/nginx.conf nginx:/etc/nginx/
这个命令是把在/alidata/myDocker/nginx下的文件拷贝到nginx容器下的/etc/nginx/目录下。(nginx:/etc/nginx/)nginx是nginx容器的容器名字,冒号后面是容器下的/etc/nginx/目录路径,是nginx镜像安装容器后默认的配置文件路径 

docker cp /alidata/myDocker/nginx/proxy.conf nginx:/etc/nginx/
这个命令是拷贝proxy.conf配置文件

docker cp /alidata/myDocker/nginx/cert nginx:/etc/nginx/
这个命令是拷贝https要求的证书文件目录



进入这个容器: 
docker exec -it nginx bash

可以用以下命令操作nginx
service nginx configtest
测试配置文件是否ok
service nginx reload
重新加载配置文件

这篇文章帮我解决问题了,我忍不住的想点赞!!!
同时也想小小的打赏一笔表示感谢。

已经有2位老爷赞赏了本文

打赏方式一:
打开支付宝,使用“扫一扫”打赏。
支付宝打赏
打赏方式二:
打开微信,使用“扫一扫”打赏。
微信打赏