Docker部署Nginx并修改配置文件

一、拉取nginx镜像

docker pull nginx

二、在宿主机中创建挂载目录

mkdir -p /data/nginx/{conf,conf.d,html,log}

三、将配置文件放到挂载目录

user www-data;worker_processes auto;pid /run/nginx.pid;events {        worker_connections 768;        # multi_accept on;}http {        ##        # Basic Settings        ##        sendfile on;        tcp_nopush on;        tcp_nodelay on;        keepalive_timeout 65;        types_hash_max_size 2048;        # server_tokens off;        # server_names_hash_bucket_size 64;        # server_name_in_redirect off;        include /etc/nginx/mime.types;        default_type application/octet-stream;        ##        # SSL Settings        ##        ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref: POODLE        ssl_prefer_server_ciphers on;        ##        # Logging Settings        ##        access_log /var/log/nginx/access.log;        error_log /var/log/nginx/error.log;        ##        # Gzip Settings        ##        gzip on;        gzip_disable "msie6";        # gzip_vary on;        # gzip_proxied any;        # gzip_comp_level 6;        # gzip_buffers 16 8k;        # gzip_http_version 1.1;        # gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;        ##        # Virtual Host Configs        ##        include /etc/nginx/conf.d/*.conf;        include /etc/nginx/sites-enabled/*;        server{                listen 80;                server_name your_server_name;   #你的serverName                root /usr/share/nginx/html;                index index.html;        }}

只要启动访问80端口就能直接访问到/usr/share/nginx/html/index.html了

四、启动nginx容器

docker run --name my_nginx-d -p 80:80  -v /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /data/nginx/log:/var/log/nginx -v /data/nginx/html:/usr/share/nginx/htmlnginx

第一个-v:挂载nginx的主配置文件,以方便在宿主机上直接修改容器的配置文件

第二个-v:挂载容器内nginx的日志,容器运行起来之后,可以直接在宿主机的这个目录中查看nginx日志

第三个-v:挂载静态页面目录

五、修改宿主机挂载目录中的配置文件以重启nginx容器

把server模块中的index改成其他的页面,以证明可以在宿主机中修改配置文件

server{    listen 80;    server_name your_server_name;   #你的serverName    root /usr/share/nginx/html;    index main.html;}

然后重启nginx容器:docker restart containerID

之后刷新页面你会发现页面从index.html变成了main.html

一、拉取nginx镜像

docker pull nginx

二、在宿主机中创建挂载目录

mkdir -p /data/nginx/{conf,conf.d,html,log}

三、将配置文件放到挂载目录

user www-data;worker_processes auto;pid /run/nginx.pid;events {        worker_connections 768;        # multi_accept on;}http {        ##        # Basic Settings        ##        sendfile on;        tcp_nopush on;        tcp_nodelay on;        keepalive_timeout 65;        types_hash_max_size 2048;        # server_tokens off;        # server_names_hash_bucket_size 64;        # server_name_in_redirect off;        include /etc/nginx/mime.types;        default_type application/octet-stream;        ##        # SSL Settings        ##        ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # Dropping SSLv3, ref: POODLE        ssl_prefer_server_ciphers on;        ##        # Logging Settings        ##        access_log /var/log/nginx/access.log;        error_log /var/log/nginx/error.log;        ##        # Gzip Settings        ##        gzip on;        gzip_disable "msie6";        # gzip_vary on;        # gzip_proxied any;        # gzip_comp_level 6;        # gzip_buffers 16 8k;        # gzip_http_version 1.1;        # gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;        ##        # Virtual Host Configs        ##        include /etc/nginx/conf.d/*.conf;        include /etc/nginx/sites-enabled/*;        server{                listen 80;                server_name your_server_name;   #你的serverName                root /usr/share/nginx/html;                index index.html;        }}

只要启动访问80端口就能直接访问到/usr/share/nginx/html/index.html了

四、启动nginx容器

docker run --name my_nginx-d -p 80:80  -v /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /data/nginx/log:/var/log/nginx -v /data/nginx/html:/usr/share/nginx/htmlnginx

第一个-v:挂载nginx的主配置文件,以方便在宿主机上直接修改容器的配置文件

第二个-v:挂载容器内nginx的日志,容器运行起来之后,可以直接在宿主机的这个目录中查看nginx日志

第三个-v:挂载静态页面目录

五、修改宿主机挂载目录中的配置文件以重启nginx容器

把server模块中的index改成其他的页面,以证明可以在宿主机中修改配置文件

server{    listen 80;    server_name your_server_name;   #你的serverName    root /usr/share/nginx/html;    index main.html;}

然后重启nginx容器:docker restart containerID

之后刷新页面你会发现页面从index.html变成了main.html

(0)

相关推荐

  • Docker部署tomcat nginx mysql,创建一个tomcat集群

    Docker的部署可以选择虚拟机或者云服务器,我自己选择的是本机安装centos7虚拟机: 1.虚拟机安装登录成功后开始部署docker: 首先了解docker是一个开源应用容器引擎,基于Go语言遵循 ...

  • docker学习8-搭建nginx环境

    前言 使用 docker 搭建 nginx 环境 下载镜像 使用docker pull 拉取最新的 nginx 镜像 [root@yoyo ~]# docker pull nginx Using de ...

  • 十二、Docker部署nginx并挂载本地目录到镜像

    拉取nginx docker pull nginx:1.18 准备工作 问题:拉取nginx并运行为容器后,如果想要修改,那么就需要进入容器,这样很麻烦. 解决:因此,要将配置文件挂载出来.使用doc ...

  • docker容器增加端口映射最佳实践(修改配置文件方式)

    前言: 在日常的docker运维中,经常遇到这样一个问题:已经配置好且运行的docker容器要根据业务需要增加端口映射到宿主机,如何简单有效的解决呢? 下面以mysql容器为例,详细说明操作步骤. 一 ...

  • .NET之Docker部署详细流程

    dotNET跨平台 今天 以下文章来源于鹏祥 ,作者AZRNG 开篇语 自己从头开始走一遍docker部署.net的流程,作为一种学习总结,以及后续会写一些在该基础之上的文章. 本次示例环境:vs20 ...

  • 避坑!用 Docker 搞定 PHP 开发环境搭建(Mac、Docker、Nginx、PHP

    文章版本:2019.8 本文转载自:https://learnku.com/articles/31344 本次更新主要是对环境版本进行了更新,例如 php 7.3.7 升级到了 7.3.8,另外之前的 ...

  • 使用 docker 部署 mdnice

    dotNET跨平台 昨天 以下文章来源于amazingarch ,作者WeihanLi amazingarch 了不起的架构,迷人的架构知识,架构点滴 使用 docker 部署 mdnice Intr ...

  • docker学习15-Docker 使用修改后容器来创建镜像

    前言 前面讲通过 Dockefile 可以制作自己的镜像,通过镜像创建容器启动服务,有时候需要修改容器里面的内容,比如我们想改点BUG. 我们可以直接在容器里面修改,验证通过后,基于现有的容器创建一个 ...

  • springboot 打jar 包部署时 读取外部配置文件

    案例:本文主要描述linux系统执行jar包读取jar包同级目录的外部配置文件 方法一:相对路径设置配置文件 (1)在jar包同级目录创建配置文件conf.properties并写入配置数据: con ...

  • 使用Docker部署Flask项目 | Theo''s blog

    Theodore Si      14 July 2019 新建一个Flask项目 目录结构 $ tree ..├── gunicorn.conf.py├── my_flask_demo│ └── _ ...