Docker安装Nginx容器
Docker安装Nginx容器
安装Nginx
# 查找官方镜像
docker search nginx
# 下载最新版Nginx镜像 (其实此命令就等同于:docker pull nginx:latest)
docker pull nginx
# 下载指定版本的Nginx镜像 (xxx指具体版本号)
docker pull nginx:xxx
# 检查当前所有Docker下载的镜像
docker images
创建Nginx配置文件
创建外部挂载目录
mkdir -p /home/nginx/conf
mkdir -p /home/nginx/log
mkdir -p /home/nginx/html
容器中的nginx.conf文件和conf.d文件夹复制到宿主机
# 生成容器
docker run --name nginx -p 9001:80 -d nginx
# 将容器nginx.conf文件复制到宿主机
docker cp nginx:/etc/nginx/nginx.conf /home/nginx/conf/nginx.conf
# 将容器conf.d文件夹下内容复制到宿主机
docker cp nginx:/etc/nginx/conf.d /home/nginx/conf/conf.d
# 将容器中的html文件夹复制到宿主机
docker cp nginx:/usr/share/nginx/html /home/nginx/
启动容器
# 创建Nginx容器并运行
docker run \
-p 9002:80 \
--name nginx \
-v /home/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /home/nginx/conf/conf.d:/etc/nginx/conf.d \
-v /home/nginx/log:/var/log/nginx \
-v /home/nginx/html:/usr/share/nginx/html \
--restart=always \
-d nginx:latest
命令 | 描述 |
---|---|
-p 9002:80 | 将容器的 9002(后面那个) 端口映射到主机的 80(前面那个) 端口 |
–name nginx | 启动容器的名字 |
-v /home/nginx/conf/nginx.conf:/etc/nginx/nginx.conf | 挂载nginx.conf配置文件 |
-v /home/nginx/conf/conf.d:/etc/nginx/conf.d \ | 挂载nginx配置文件 |
-v /home/nginx/log:/var/log/nginx \ | 挂载nginx日志文件 |
-v /home/nginx/html:/usr/share/nginx/html \ | 挂载nginx内容 |
--restart=always | 设置docker内容器的自启动 |
-d | 后台运行 |
nginx:latest | 本地运行的版本 |
\ | shell 命令换行 |
开放服务器9002端口
systemctl start firewalld
firewall-cmd --zone=public --add-port=9002/tcp --permanent
firewall-cmd --reload
测试服务
访问地址http://192.168.2.140:9002