docker安装nginx代理

1. 下载nginx镜像包

百度云盘下载地址

2. 加载镜像

#加载镜像
sudo docker load < nginx.tar

#启动nginx
sudo docker run --name nginx -d -p 80:80 nginx
#通过浏览器访问 http://IP,出现【Welcome to nginx!】表示成功
#拷贝默认配置文件
sudo mkdir /etc/nginx
cd /etc/nginx/
sudo docker cp nginx:/etc/nginx/nginx.conf /etc/nginx/nginx.conf
sudo docker cp nginx:/etc/nginx/conf.d/ /etc/nginx/conf.d



3. 配置文件拷贝完成,停止当前nginx,使用外部配置文件启动

#停止并删除当前nginx服务
sudo docker stop nginx
sudo docker rm nginx
#新建日志文件夹
sudo mkdir /etc/nginx/log
#启动nginx
sudo docker run --name nginx -d -p 80:80 -v /etc/nginx/nginx.conf:/etc/nginx/nginx.conf -v /etc/nginx/conf.d/:/etc/nginx/conf.d/ -v /etc/nginx/log:/var/log/nginx nginx
#执行以下命令查看nginx服务
sudo docker ps 

4. docker/nginx反向代理tcp

4.1 在/etc/nginx/conf.d文件夹下新建proxy.conf文件

cd /etc/nginx/conf.d/
vim proxy.conf
#文件内容如下
stream {

    upstream cloudsocket {
       hash $remote_addr consistent;
      # $binary_remote_addr;
       server 172.16.130.1:3306 max_fails=3 fail_timeout=30s;
    }
    server {
       listen 13306;#数据库服务器监听端口
       proxy_connect_timeout 10s;
       proxy_timeout 300s;#设置客户端和代理服务之间的超时时间,如果5分钟内没操作将自动断开。
       proxy_pass cloudsocket;
    }
}

4.2 修改nginx.conf,引入proxy.conf

cd /etc/nginx/
vim nginx.conf

4.3 启动nginx,nginx添加了13306监听,故需多增加-p 13306:13306监听端口

#若nginx已启动,需先删除服务
docker stop nginx && docker rm nginx
#启动nginx
docker run --name nginx -d -p 80:80 -p 13306:13306 -v /etc/timezone:/etc/timezone:ro -v /etc/nginx/nginx.conf:/etc/nginx/nginx.conf -v /etc/nginx/conf.d/:/etc/nginx/conf.d/ -v /etc/nginx/log:/var/log/nginx nginx

4.4 要看监听端口

lsof -i:13306
#返回如下内容,表示成功
COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
exe     3134 root    4u
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值