Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。今天为大家分享一下使用 Docker 安装 Nginx 容器部署前端项目的完整步骤,供有此需求的小伙伴参考。

Docker 安装 Nginx 容器部署前端项目

1.拉取 Nginx 镜像到本地

  1. docker pull nginx 下载最新版Nginx镜像
  2. docker pull nginx:xxx 下载指定版本的Nginx镜像

2.拉取1.24.0的nginx镜像

  1. docker pull nginx:1.24.0

3.查看本地nginx镜像

  1. docker images nginx

4.创建挂载目录

  1. mkdir -p /home/nginx/conf
  2. mkdir -p /home/nginx/logs
  3. mkdir -p /home/nginx/html

5.生成容器,并把 Nginx 对应配置放入本地一份

  1. # 生成容器
  2. docker run --name nginx -p 80:80 -d nginx:1.24.0
  3. # 将容器nginx.conf文件复制到宿主机
  4. docker cp nginx:/etc/nginx/nginx.conf /home/nginx/conf/nginx.conf
  5. # 将容器conf.d文件夹下内容复制到宿主机
  6. docker cp nginx:/etc/nginx/conf.d /home/nginx/conf
  7. # 将容器中的html文件夹复制到宿主机
  8. docker cp nginx:/usr/share/nginx/html /home/nginx/

容器中的 nginx.conf 文件和 conf.d 文件夹复制到宿主机。

6.停止容器并将其删除

  1. # 关闭该容器
  2. docker stop nginx
  3. # 删除该容器
  4. docker rm nginx
  5. # 删除正在运行的nginx容器
  6. docker rm -f nginx

7.启动容器并进行目录挂载映射

  1. docker run --net host --name nginx --restart always \
  2. -v /home/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
  3. -v /home/nginx/conf/conf.d:/etc/nginx/conf.d \
  4. -v /home/nginx/log:/var/log/nginx \
  5. -v /home/nginx/html:/usr/share/nginx/html \
  6. -d nginx:1.24.0

想要多个端口起效果,启动时要用–net host,启动时不要指定端口

8.自定义nginx对外端口

  1. 修改 /home/nginx/conf/conf.d/default.conf文件

9.修改防火墙策略

  1. # 开放8000端口
  2. firewall-cmd --zone=public --add-port=8000/tcp --permanent
  3. # 重启
  4. firewall systemctl restart firewalld.service

10.修改防火墙策略需要重启docker

  1. systemctl restart docker

结束语

Docker 是一个开源的应用容器引擎,使用 Docker 可以快速搭建 Nginx 运行环境。本文简单分享了一下使用 Docker 搭建 Nginx 运行环境的完整步骤,供有此需求的小伙伴参考。如果有任何意见或建议,欢迎在下方评论处留言。

本文已通过「原本」原创作品认证,转载请注明文章出处及链接。

夏日阳光
  • 本文由 夏日阳光 发表于 2024年6月26日
  • 本文为夏日阳光原创文章,转载请务必保留本文链接:https://www.pieruo.com/246.html
匿名

发表评论

匿名网友
:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:
确定

拖动滑块以完成验证
加载中...