zoukankan      html  css  js  c++  java
  • Docker 中如何安装配置 Nginx

    拉取 nginx 最新版镜像,然后简单启动一个 nginx 容器:

    docker pull nginx:latest
    docker run --name nginx01 -d -p 80:80 nginx

    这样就安装并运行好了 nginx,可以使用浏览器访问 ip 地址即可看到 nginx 服务。

    如果要对 nginx 进行配置,就需要通过交互模式进入容器:

    docker exec -it nginx01 bash 

    在容器内部就可以访问到完整的 nginx 程序文件,可以找到:

    html文件目录:/usr/share/nginx/html

    nginx.conf 配置文件:/etc/nginx/nginx.conf

    default.conf 配置文件:/etc/nginx/conf.d/default.conf

    log日志文件目录:/var/log/nginx

    ssl配置目录:/ssl

    每一次都要进入容器内部去编辑配置文件有些不方便,而且还需要在容器内部安装 vi 或 vim,所以最好将容器与主机磁盘进行挂载。

    挂载之前,我们在主机上创建好 nginx 文件目录:

    sudo mkdir -p /home/docker/nginx/{log,ssl,html,conf/conf.d}
    sudo chmod -R 755 /home/docker/nginx/html

     然后通过 docker cp 命令将容器内的 nginx 配置文件 copy 到刚创建的主机文件目录中:

    docker cp nginx01:/etc/nginx/nginx.conf /home/docker/nginx/conf/nginx.conf
    docker cp nginx01:/etc/nginx/conf.d/default.conf /home/docker/nginx/conf/conf.d/default.conf

    接着,我们停止并删除 nginx01 容器:

    docker stop nginx01
    docker rm nginx01

    好了,我们要重新启动一个 nginx 容器了:

    docker run --name nginx02 -d
    --restart=always 
    --privileged=true
    -v /home/docker/nginx/html:/usr/share/nginx/html
    -v /home/docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf
    -v /home/docker/nginx/conf/conf.d/default.conf:/etc/nginx/conf.d/default.conf
    -v /home/docker/nginx/log:/var/log/nginx
    -v /home/docker/nginx/ssl:/ssl/ 
    -p 443:443 -p 80:80
    nginx

    使用 --privileged=true 参数,容器内的 root 用户才拥有真正的 root 权限,否则容器内的 root 只是主机上的一个普通用户。

    使用 -v path1:path2 参数,其中 path1 是主机的磁盘地址,path2 是 docker 容器的虚拟磁盘地址,可以定义多个 -v 映射多个文件夹。

    最后,通过 docker ps 命令查看 nginx 容器是否已成功运行。

    通常,我们在 nginx 中部署项目的时候,都喜欢在 conf.d/ 目录下创建新的配置文件(如:xxx.conf),但在 docker 中,你需要注意新建的 xxx.conf 文件是否被成功映射,否则可能就无法被 nginx 正常读取到,也就无法生效。

     一个简单的记录,希望有所帮助!

  • 相关阅读:
    Json对象和Json字符串
    主界面的构造函数报错
    WPF DataGrid绑定的数据源更新后界面信息不更新
    WPF 数据绑定 ( 经验 )
    WPF 简单快速地去掉Button控件的边框
    字节数组与字符串形式的数字(序列号)之间的相互转换
    将十进制数字转换为字节数组
    WPF 调用线程无法访问此对象,因为另一个线程拥有该对象。
    cmd中一些命令
    Notepad++运行快捷键的设置
  • 原文地址:https://www.cnblogs.com/journet/p/12785207.html
Copyright © 2011-2022 走看看