Docker nginx

1、安装:docker pull nginx:latest
2、查看本地镜像:docker images
3、运行:docker run --name nginx-test -p 8080:80 -d nginx
–name nginx-test:容器名称。
-p 8080:80: 端口进行映射,将本地 8080 端口映射到容器内部的 80 端口。
-d nginx: 设置容器在在后台一直运行。

4、docker run -it -p 80:80 -v pwd/logs:/var/log/nginx dockerfile/nginx
这个命令会在当前目录下创建logs目录,存放access.log和error.log。

5、查看都有哪些容器:docker ps -a
6、进入容器(containerID 是容器的ID):docker exec -it containerID /bin/bash
用ls就可以查看哪些文件
7、文件映射:
先在外部建立文件夹 :mkdir /etc/nginx/

在这里插入代码片
#docker run -d -p 80:80 --name nginx --net host -v /etc/nginx/default.conf:/etc/nginx/conf.d/default.conf -v /etc/nginx:/etc/nginx/conf.d nginx

命令说明:
-p 80:80: 将容器的 80 端口映射到主机的 80 端口。
–name nginx :将容器命名为 nginx 。

–net host :启动模式 建议使用 否则做负载均衡会有问题! 如果添加此语句,出现错误。
原因:
docker启动时指定–network=host或-net=host,如果还指定了-p或-P,那这个时候就会有此警告,并且通过-p或-P设置的参数将不会起到任何作用,端口号会以主机端口号为主,重复时则递增。
解决:
解决的办法就是使用docker的其他网络模式,例如–network=bridge,这样就可以解决问题,
docker的网络模式:
bridge模式: Docker的默认设置
host模式
none模式
container模式: 使用时要指定容器名
overlay模式

-v /etc/nginx/default.conf:/etc/nginx/conf.d/default.conf:将我们自己创建的 nginx目录下文件挂载到容器的 /etc/nginx/conf.d/default.conf。
-v /etc/nginx:/etc/nginx/conf.d 挂载目录

目录到目录 文件到文件

修改Nginx配置文件之后使之生效方法:
docker exec -it nginx service nginx reload

如果不启作用
docker stop nginx docker start nginx

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值