docker 安装NGINX

docker pull nginx #拉取NGINX镜像,不指定版本默认最新的版本

  1. mkdir /home/nginx/conf
  2. mkdir /home/nginx/logs
  3. mkdir /home/nginx/html
  4. mkdir /home/nginx/conf.d #conf.d主要放自己的配置监听文件 在conf目录下也会生成一个,猜测因为容器里etc/nginx这个目录下有个conf.d 目录 所以为自动生成,

但是我又重新挂载了一下这个目录,可能挂载的级别高所以自动生成的不起作用

5.#创建完成移动到nginx目录下 再运行创建容器代码

6.cd /home/nginx

#挂载时必须是目录。不能是文件

7.先启动一个nginx 镜像,不挂载外部文件

docker run -d --name=mynginx -p 8809:80 nginx

8.进入mynginx容器

docker exec -it mynginx bash

找到nginx的配置文件

etc/nginx/nginx.conf /etc/nginx/conf.d /etc/nginx/mime.types /usr/share/nginx/html

这四个文件或者目录(conf.d,html是目录)拷贝到宿主机下对应的目录中 (如果使用默认配置nginx.conf时mime.types 这个文件必须在他会去找)

docker cp mynginx:/etc/nginx/nginx.conf /home/nginx/conf

docker cp mynginx:/etc/nginx/conf.d/ /home/nginx/conf.d

docker cp mynginx:/etc/nginx/mime.types /home/nginx/conf

docker cp mynginx:usr/share/nginx/html /home/nginx/html

9.启动一个新容器

docker run -d --name=dockernginx -p 18809:80 -v /home/nginx/html:/usr/share/nginx/html -v /home/nginx/conf.d/:/etc/nginx/conf.d -v /home/nginx/log:/var/log/nginx -v /home/nginx/conf:/etc/nginx/ nginx

10.docker ps -a 查看是否状态是up

11.访问地址ip:18809 出现页面

12.查看挂载的路径

docker inspect --format='{{.Mounts}}' dockernginx

[{bind /home/nginx/html /usr/share/nginx/html true rprivate} {bind /home/nginx/log /var/log/nginx true rprivate} {bind /home/nginx/conf /etc/nginx true rprivate} {bind /home/nginx/conf.d /etc/nginx/conf.d true rprivate}]

############################################################

以上是默认80端口映射到宿主机的18809端口了,访问18809等于访问80端口了

但是这个只能监听80端口,配置多端口监听的话,需要把监听的端口映射出来

13. docker内启动一个服务端口为8087 映射宿主机端口18006

在/home/nginx/conf.d目录下再创建一个配置文件dockertest.conf

监听18007端口并地址上有/api/标识转发到18006服务上

需要重新创建一个容器,并将18007端口映射出来

docker重新创建一个容器名称为dockernginxnew ,并将80和18007端口映射到宿主机

docker run -d --name=dockernginxnew -p 18809:80 -p 18007:18007 -v /home/nginx/html:/usr/share/nginx/html -v /home/nginx/conf.d/:/etc/nginx/conf.d -v /home/nginx/log:/var/log/nginx -v /home/nginx/conf:/etc/nginx/ nginx

创建完成后

访问http://192.168.100.101:18809/ 或者 http://192.168.100.101:18007 都可以看的nginx的index.html页面(location / 配置了)

访问18007端口并转发到18006服务

docker exec dockernginxnew nginx -v 查看nginx 版本

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值