用docker部署nginx官方只给了docker版本的,没有compose的,只好自己转换一下了,记录一下,方便下次部署,这只是简单的部署,至于nginx配置的话,有空再补吧🫠
1、创建docker-nginx目录#
新建 docker-compose.yml 文件
1
2
3
4
5
|
mkdir docker-nginx
mkdir nginx
mkdir log
mkdir html
vim docker-compose.yml
|
2、docker-compose.yml#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
version: '3.3'
services:
web:
image: nginx:latest
container_name: nginx
volumes:
- ./nginx:/etc/nginx
- ./log:/var/log/nginx
- ./html:/usr/share/nginx/html //网站放置目录
ports:
- "8081:80"
environment:
- NGINX_HOST="192.168.116.10" //访问地址/域名
- NGINX_PORT="80" //访问端口
- TZ="Asia/Shanghai" //时区
restart: always
|
3、手动cp配置文件#
由于官方image没有默认映射外部文件,需要手动把配置文件cp出来
1
2
3
4
5
6
7
8
9
|
# 运行官方命令创建默认容器
docker run --name nginx -p 8080:80 -d nginx
#配置文件复制到nginx里,其他文件可用复制
#是个坑,路径必须是全路径
docker cp nginx:/etc/nginx /opt/docker-nginx
#删除默认容器
docker stop nginx && docker rm nginx
|
4、修改nginx配置文件#
端口号、域名,ssl等和以前配置一样,不再赘述
5、运行&测试#
1
2
3
4
5
6
|
docker-compose up -d
#查看日志
docker-compose logs -f
#浏览器输入IP或域名查看是否可以访问
|
参考文档:
1、Docker Hub-nginx