专栏首页Java修行之道Docker部署Nginx并修改配置文件

Docker部署Nginx并修改配置文件

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/html
nginx

第一个-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 条评论
登录 后参与评论

相关文章

  • Nginx拦截指定国家的IP

    ps:我看网上说可以自定义403页面然后直接“return 403”就可以跳转到自定义页面了,

    用户2409797
  • 使用idea创建一个maven工程

    用户2409797
  • nginx配置https转发到tomcat(使用自签名的证书)

    命令:openssl genrsa -des3 -out server.key 1024

    用户2409797
  • [Linux] PHP程序员玩转Linux系列-nginx初学者引导

    nginx有一个master进程和很多个worker进程.master进程的主要目的是读取和执行配置文件,维持worker进程.worker进程真正处理请求.n...

    陶士涵
  • 使用Nginx防止IP地址被恶意解析

    初始化ECS后会生成一个公网IP,默认访问IP地址自动访问80端口,此时通过ip地址可直接访问启动在80端口的服务。

    Noneplus
  • nginx.service: control process exited, code=exited status=1

    kirin
  • CentOS7 Docker Nginx部署及运行详解

    [root@localhost nginx]# sudo docker build –rm –tag os7/nginx:centos7 .

    砸漏
  • nginx 基本入门

    本文是至今为止见过最好的 nginx 入门文章,主要讲解的是如何启用和停止nginx,和重新加载配置,描述配置文件的基本结构和怎样搭建一个 nginx 静态辅助...

    腾讯IVWEB团队
  • nginx反向代理+http user 认证访问 私有registry

    利用nginx做反向代理,从而实现对registry的访问;而nginx作为反向代理来使用在实际情况中非常多见,并且还支持基本的用户权限认证。 本节讲述如何用...

    qsjs
  • Docker教程05:Docker安装ngninx

    等待下载完成后,我们就可以在本地镜像列表里查到 REPOSITORY 为 nginx 的镜像.

    mojocn

扫码关注云+社区

领取腾讯云代金券