• 阿里云上docker部署nginx实现反向代理


    简介

      需要从镜像仓库找到所需要的nginx版本pull下来.(地址:https://hub.docker.com/)

    1.docker pull nginx 
    

    1.挂载目录

    1.1 获取nginx.conf配置文件

      首先建立需要挂载的目录。

    1.mkdir -p {logs,conf,html}
    

    1.2 创建nginx.conf文件

      需要从nginx的配置文件当中获取出来nginx.conf这个配置文件。(也可以手动编辑,为了方便所以直接从运行中的nginx当中获取nginx.conf)

      复制出来nginx.conf文件之后,删除刚才我们创建的那个nginx服务

    1.首先运行nginx服务
        docker run -tid -name nginx nginx:latest 
    2.把nginx当中nginx.conf复制到宿主机当中
        docker cp nginx:/etc/nginx/nginx.conf .
    3.此时在删除之前运行的容器
        docekr rm -f nginx
    

    1.3 运行nginx服务

      需要的前期工作已经准备好了,现在就可以运行nginx服务了;

    1.命令
    docker run --name nginx -tid  --restart=always -v /root/data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /root/data/ng                                                inx/logs:/var/log/nginx -v /root/data/nginx/html:/etc/nginx/html -p 8080:80 nginx
    

    1.4 运行

      到此就可以直接访问nginx服务了。

    配置反向代理

      如果需要配置反向代理的话,简单的就在nginx.conf下的http节点下添加server节点即可

    server {
    listen      8102;
    server_name 192.168.0.109;
    location / {
       proxy_pass http://192.168.0.109:8090;
      }
    }
    

      然后执行docker restart nginx即可

    注意:添加完如上代码之后,如果是在liunx上可以这么运行。但是由于docker网络是一个默认的单机桥接网络,也就是说该网络只能在单个Docker上运行,并且只能在docker容器内部访问,宿主机是无法访问到刚配置的8102端口,因为该端口还没做映射。所以如果是想要监听8102端口,需要在运行nginx的时候加上-p 8102:8102这句话

  • 相关阅读:
    【POJ 2987】Firing (最小割-最大权闭合子图)
    -网络流经典模型
    【bzoj 3299】 [USACO2011 Open]Corn Maze玉米迷宫(最短路)
    【POJ 3623】 Best Cow Line, Gold (后缀数组)
    题表-各种生成树
    yield 生成器的运行机制
    numpy.random.shuffle(x)的用法
    Softmax回归(Softmax Regression
    softmax 函数
    极大似然估计的朴素理解
  • 原文地址:https://www.cnblogs.com/zhengyazhao/p/12456822.html
Copyright © 2020-2023  润新知