1. 前言
《CentOS7设置nginx开机自启动》一文中学习了在CentOS7中安装配置Nginx的方法,本文学习一下使用Docker安装配置Nginx的方法。
前置条件是安装配置好了docker环境,安装方法参考《Docker入门》。
2. 安装Nginx
1、登录dockerhub查看需要的Nginx - Docker Official Images。
2、下载nginx镜像(以1.17.7为例)
1 | docker pull nginx:1.17.7 |
3、创建nginx挂载目录
1 | mkdir -p /opt/nginx/{conf,html,ssl,work,log} |
4、拷贝nginx镜像中的配置到宿主机
1 | docker run --name tmp-nginx -d nginx:1.17.7 |
5、启动nginx服务
1 | docker run --name vk-nginx -d --privileged=true \ |
以上命令:
- 命名容器为vk-nginx,后台运行
- 映射宿主机80、443端口到容器的80、443端口
- 挂载宿主机文件 /opt/nginx/conf/nginx.conf 到容器文件 /etc/nginx/nginx.conf
- 挂载宿主机目录 /opt/nginx/conf/conf.d 到容器目录 /etc/nginx/conf.d
- 挂载宿主机目录 /opt/nginx/ssl 到容器目录 /etc/nginx/ssl
- 挂载宿主机目录 /opt/nginx/html 到容器目录 /usr/share/nginx/html
- 挂载宿主机目录 /opt/nginx/work 到容器目录 /usr/share/nginx/work
- 挂载宿主机目录 /opt/nginx/log 到容器目录 /var/nginx/log
- 挂载宿主机目录 /etc/localtime 到容器目录 /etc/localtime
更多启动命令参数可以参考How to use this image。
6、验证安装
(1)docker ps
,nginx启动正常的话就可以看到vk-nginx容器。
(2)curl localhost
,可以看到html文本。
(3)浏览器访问 http://8.136.13.58 ,可以看到Welcome to nginx!
3. 常用命令
3.1. 测试配置
1 | docker exec -it vk-nginx nginx -t |
3.2. 重新加载配置
1 | docker exec -it vk-nginx nginx -s reload |
3.3. 重启nginx
1 | docker restart vk-nginx |
4. 配置Web服务
参考文档:
以配置 www.voidking.com 域名的Web服务为例。
1、下载博客项目
1 | mkdir /opt/nginx/work |
2、上传证书
上传 1_www.voidking.com_bundle.crt
和 2_www.voidking.com.key
到 /opt/nginx/conf.d/ssl 目录
3、创建配置文件
1 | cd /opt/nginx/conf/conf.d |
内容为:
1 | server { |
4、重启nginx
1 | docker restart vk-nginx |
5、查看是否启动成功
1 | docker ps |
至此, www.voidking.com 域名配置完成,在dnspod添加好解析即可访问,nice。