• Docker 安装 nginx


    1.拉取镜像

    docker pull nginx

    2.查看镜像

    docker images

    3.创建目录及文件

    mkdir -p /usr/local/gep/nginx/conf
    mkdir -p /usr/local/gep/nginx/html
    touch /usr/local/gep/nginx/conf/nginx.conf

    4.在nginx.conf中配置多个端口监听

    worker_processes  1;
    
    events {
        worker_connections  1024;
    }
    
    
    http {
        include       mime.types;
        default_type  application/octet-stream;
        sendfile        on;
        keepalive_timeout  65;
    
        server {
            listen     10011;
            server_name  localhost;
    
            location / {
                root /usr/share/nginx/html; # nginx工作目录是容器的而非宿主机
                index index.html index.htm;
        }
            # axios 配置代理转发
        location /redis/ {
                proxy_pass http://www.redis.cn/;
            }
        }
    
        server {
            listen     10012;
            server_name localhost;
            location / {
                 root  /usr/share/nginx/html; # nginx工作目录是容器的而非宿主机
                 index index.html index.htm;
            }
            # axios 配置代理转发 
            location /zhihu/ {
                 proxy_pass https://www.zhihu.com/;
            }
        }
    }

     5.创建容器并启动

    docker run -it -d 
    --name gep_nginx 
    -p 10012:10012 
    -p 10011:10011 
    -v /usr/local/gep/nginx/conf/nginx.conf:/etc/nginx/nginx.conf 
    -v /usr/local/gep/nginx/html:/usr/share/nginx/html 
    nginx 

    参数说明:

      --name  给镜像也别名

      -p 是端口

      -v  表示挂载文件或目录,左边为宿主机位置,右边为容器位置,这样在宿主机修改的文件或目录会自动到容器内。

      如果不做配置文件的同步,宿主机修改的配置文件在容器无法生效;如果不做目录的挂载,通过nginx访问的资源会报404。

    5. 查看容器

    docker ps -a

    6. 查看nginx启动日志(gep_nginx是我自己的镜像名)

    docker logs gep_nginx

    7. 启动、关闭、重启nginx (gep_nginx是我自己的镜像名)

    docker start gep_nginx 
    docker stop gep_nginx 
    docker restart gep_nginx
  • 相关阅读:
    接收HttpPost请求路由可以不用带去掉参数
    吟唱一首
    C# XML反序列化解析成对象集合
    两个对象中相同属性赋值
    CefSharp 笔记-1
    C# 笔记--Label设置背景图片
    C# 笔记--VS 2017包下载超时,连接失败
    SQLite——C#查询表时 该字符串未被识别为有效的 DateTime 错误
    C# 笔记--Sendkeys
    C# 笔记——MeasureString准确测量
  • 原文地址:https://www.cnblogs.com/mumuda/p/14823590.html
Copyright © 2020-2023  润新知