docker部署nginx最佳实践

拉取镜像

docker pull nginx

创建挂载目录

mkdir -p /home/nginx/{conf,log,html}

运行容器

docker run --name nginx -d -p 80:80 nginx

复制nginx默认配置

docker cp nginx:/etc/nginx/nginx.conf /home/nginx/nginx.conf
docker cp nginx:/etc/nginx/conf.d /home/nginx/conf.d
docker cp nginx:/usr/share/nginx/html /home/nginx/html
docker rm -f nginx

重新运行nginx镜像

docker run --name nginx -m 200m -p 80:80 \
-v /home/nginx/nginx.conf:/etc/nginx/nginx.conf \
-v /home/nginx/conf.d:/etc/nginx/conf.d \
-v /home/nginx/html:/usr/share/nginx/html \
-v /home/nginx/log:/var/log/nginx \
-e TZ=Asia/Shanghai \
--restart=always \
--privileged=true -d nginx

# -e TZ=Asia/Shanghai:设置时区
# --restart=always: 保持自动重启
# --privileged=true: 获取root权限启动容器

防火墙配置

如果开启了防火墙则需配置开放nginx使用的80端口,如未开启防火墙则跳过下述内容

# 查看防火墙的状态
firewall-cmd --state

# 开放nginx使用的80端口
#–-zone 作用域
#–-add-port=80/tcp 添加端口,格式为:端口号/通讯协议
#--permanent 标志用于使更改永久生效,如果不使用,更改将在下次重启后失效。
firewall-cmd --zone=public --add-port=80/tcp --permanent
# 重载防火墙配置以使更改生效(无论是添加还是移除,都需要重启一遍防火墙才能生效)
firewall-cmd --reload

注意:
如果是云服务器(例:阿里云、腾讯云、华为云等),服务器在防火墙开放端口的同时还需在云服务中控台配置安全组开放相关端口,才能使最终链路打通链接。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值