当前位置:   article > 正文

docker部署nginx并映射本地目录_docker配置nginx文件和映射

docker配置nginx文件和映射

你要有一定的nginx和docker基础

思路,将服务器的三个文件夹和nginx容器中的三个文件夹相对应上,其中难点在于conf目录。处理思路:1.随便起一个nginx容器;2.将容器中的配置文件复制到本地;3.删掉容器重建,并映射本地路径 。

目录

前提知识

准备原材料

先要有镜像

随便起个nginx容器

准备三个文件夹

启动容器

结果验证

后续拓展

参考连接


前提知识

容器内有三个路径可以映射,看自己选择要映射某一或几项:

1.静态资源:/usr/share/nginx/html,就是我们存放html,js文件的地方

2.配置文件:/etc/nginx,存放配置文件的地方,这个东西需要把容器里的复制出来

3.日志文件:/var/log/nginx,存放日志的地方

准备原材料

先要有镜像

docker pull nginx

随便起个nginx容器

容器名字姑且叫nginx00,姑且用9004指向容器内的80,这些参数都随意

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

容器启动后,可以看看服务器的9004端口是否嫩访问到nginx,如果能正常访问就没问题,如果不行,自行解决吧

准备三个文件夹

因为我是要将本地的/home/docker/nginx路径做映射,所以cd到路径下执行

docker container cp nginx00:/etc/nginx .

执行后,本地多了个nginx文件夹,将其改名叫conf

mv nginx conf

将另外两个需要映射的文件夹

  1. mkdir html
  2. mkdir logs

在html路径下,自己vi写个test.html。内容随意,命令自行解决。

这时,你已经准备完毕原材料

启动容器

先把原来的容器铲除掉

  1. docker stop nginx00 #停止
  2. docker rm nginx01 #删除
  3. docker ps -a #看看是不是没了

建新的容器,起名nginx01,还用9004端口,三个路径都映射。

  1. #二者选择一个执行即可
  2. #一行版本
  3. docker run -d -p 9004:80 --name nginx01 -v /home/docker/nginx/html:/usr/share/nginx/html -v /home/docker/nginx/conf:/etc/nginx -v /home/docker/nginx/logs:/var/log/nginx nginx
  4. #折行版本
  5. docker run -d -p 9004:80 --name nginx01 \
  6. -v /home/docker/nginx/html:/usr/share/nginx/html \
  7. -v /home/docker/nginx/conf:/etc/nginx \
  8. -v /home/docker/nginx/logs:/var/log/nginx \
  9. nginx

结果验证

结果验证

后续拓展

如果nginx.conf变化了,该如何reload这个conf文件,莫非只能重启或者重建容器么?目前还没找到好方法。欢迎留言指导~

参考连接

本文主要用于自己的学习记录,其实大家也都能从网上找到,特别感谢这几篇文章

centos7下使用docker安装nginx

docker安装Nginx,映射本地文件

dockerhub nginx官方文档

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/710316
推荐阅读
相关标签
  

闽ICP备14008679号