Docker 安装Nginx
大约 2 分钟约 555 字
Docker 安装Nginx
拉取nginx镜像
docker pull nginx
启动nginx
直接启动一个nginx容器,端口映射到本地80端口,然后将容器的配置文件拷贝到本地,然后停止并移除容器,最后启动容器并挂载本地目录
docker run --name nginx -p 80:80 -d nginx
docker ps
因为nginx需要经常需要变更配置并需要发布静态文件,需要最好通过文件映射出来
本地创建管理目录
mkdir -p /etc/nginx
mkdir -p /etc/nginx/www
mkdir -p /var/www/html
mkdir -p /etc/nginx/conf
mkdir -p /etc/nginx/logs
copy到刚创建的管理目录
docker cp nginx:/etc/nginx/nginx.conf /etc/nginx/
docker cp nginx:/etc/nginx/conf.d /etc/nginx/conf/
docker cp nginx:/usr/share/nginx/html/ /etc/nginx/www/
docker cp nginx:/var/log/nginx/ /etc/nginx/logs/
停止并移除容器
docker stop nginx
docker rm nginx
启动容器并目录挂载
docker run --name nginx -p 80:80 \
--restart=always \
-v /etc/nginx/nginx.conf:/etc/nginx/nginx.conf \
-v /etc/nginx/www/:/usr/share/nginx/html/ \
-v /var/www/html/:/var/www/html/ \
-v /etc/nginx/logs/:/var/log/nginx/ \
-v /etc/nginx/conf/:/etc/nginx/conf.d \
--privileged=true -d nginx
--name
容器名称-p
端口映射-v
目录映射--privileged=true
以root权限运行-d
后台运行--restart
重启命令
docker容器可以设置开机自启动
-- restart具体参数值详细信息
no - 容器退出时,不重启容器
on-failure - 只有在非0状态退出时才从新启动容器
always - 无论退出状态是如何,都重启容器
# 如果启动完容器时未指定 --restart=always ,可通过 update 命令更改;
docker update --restart=always b5be158c7014 # b5be158c7014为容器id,通过docker ps -a命令查看
通过容器id,操作容器
# 查看所有已经创建的容器
docker ps -a
# 通过容器id启动容器
docker start b5be158c7014
# 通过容器id 停止容器
docker stop b5be158c7014
# 通过容器id,重新启动容器
docker restart b5be158c7014
docker rm b5be158c7014
防火墙放行端口80
#查看防火墙目前的放行端口列表
firewall-cmd --list-ports
#添加防火墙放行端口(permanent代表永久生效)
firewall-cmd --add-port=80/tcp --permanent
#重新加载防火墙(添加完放行端口一定要重新加载防火墙)
firewall-cmd --reload