docker中配置nginx容器,并挂载配置文件、数据文件、日志文件

nginx

  • 下载最新版本的nginx,这里所有的要用到的镜像都已经下载过,所以我拉取镜像的界面如下。

    docker pull nginx
    

image-20231122103133489

  • 检查docker下载的镜像

    image-20231122103307221

  • 在服务器上创建挂载目录,主要有三个目录,一个放配置文件,一个放日志,一个放需要部署的页面,尽量都挂载到/opt/docker/文件夹下

    • 新建一个文件夹

      image-20231122112918951

    • 在新建的文件夹中创建三个文件夹

      image-20231122112906896

  • 生成容器

    docker run --name nginx_test -p 9001:80 -d nginx
    
    • nginx_test:容器的名字,随便取,不过不能重名
    • nginx:镜像名字,也就是刚才拉取的镜像
    • 9001:宿主机需要暴露的端口
    • 80:容器中nginx的端口,默认都是80
    • 也就是将容器的80端口映射到宿主机的9001端口
  • 将容器nginx.conf文件复制到宿主机

    docker cp nginx_test:/etc/nginx/nginx.conf /opt/docker/nginx_test/conf/nginx.conf
    
    • /etc/nginx是容器的目录
    • /opt/docker/nginx_test/conf是宿主机的目录
    • 也就是将容器/etc/nginx中的nginx.conf文件你复制到宿主机的/opt/docker/nginx_test/conf/目录下
  • 将容器conf.d文件夹下内容复制到宿主机

    docker cp nginx_test:/etc/nginx/conf.d /opt/docker/nginx_test/conf/conf.d
    
  • 将容器中的html文件夹复制到宿主机

    docker cp nginx_test:/usr/share/nginx/html /opt/docker/nginx_test/
    
  • 上几步运行结果image-20231122105213665

  • 创建容器

    • 找到nginx对应的容器id

      docker ps -a
      

      image-20231122105441690

    • 关闭该容器

      docker stop f78b22525ab9(或用容器名nginx_test也可)
      

      image-20231122105630753

    • 删除该容器

      之所以删除是因为刚才创建容器只是为了复制其中的文件,但是还没完成挂载,现在文件拿到了,就可以真正创建并挂载nginx容器了

      docker rm f78b22525ab9(或用容器名nginx_test也可)
      

      image-20231122105610305

  • 创建容器(完整版)

    docker run \
    -p 81:80 \
    --name nginx_test \
    -v /opt/docker/nginx_test/conf/nginx.conf:/etc/nginx/nginx.conf \
    -v /opt/docker/nginx_test/conf/conf.d:/etc/nginx/conf.d \
    -v /opt/docker/nginx_test/log:/var/log/nginx \
    -v /opt/docker/nginx_test/html:/usr/share/nginx/html \
    -d nginx:latest
    
命令   描述
–name nginx启动容器的名字
-d后台运行
-p 81:80将容器的 80(后面那个) 端口映射到主机的 81(前面那个) 端口
-v /opt/docker/nginx_test/conf/nginx.conf:/etc/nginx/nginx.conf挂载nginx.conf配置文件
-v /opt/docker/nginx_test/conf/conf.d:/etc/nginx/conf.d挂载nginx配置文件
-v /opt/docker/nginx_test/log:/var/log/nginx挂载nginx日志文件
-v /opt/docker/nginx_test/html:/usr/share/nginx/html挂载nginx内容
nginx:latest本地运行的版本
\shell 命令换行

image-20231122110225174

  • 成功结果验证

    image-20231122112804345

image-20231122112846267

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值