zoukankan      html  css  js  c++  java
  • Docker运行Nginx服务器

    一、获取Docker容器的Nginx镜像

    二、创建Docker容器宿主机挂载目录

    # 创建挂载目录,-v 显示创建的目录名
    [root@idclooknet ~]# mkdir -vp /opt/docker_cfg/nginx/html /opt/docker_cfg/nginx/logs /opt/docker_cfg/nginx/conf 

    三、添加Nginx基本配置到挂载的配置文件

    #新建nginx配置文件 nginx.conf,并添加配置
    [root@idclooknet conf]# touch nginx.conf 
    
    #nginx配置文件的配置如下
    [root@idclooknet conf]# cat nginx.conf 
    user  nginx;
    worker_processes  1;
    
    error_log  /var/log/nginx/error.log warn;
    pid        /var/run/nginx.pid;
    
    
    events {
        worker_connections  1024;
    }
    
    
    http {
        include       /etc/nginx/mime.types;
        default_type  application/octet-stream;
    
        log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                          '$status $body_bytes_sent "$http_referer" '
                          '"$http_user_agent" "$http_x_forwarded_for"';
    
        access_log  /var/log/nginx/access.log  main;
    
        sendfile        on;
        #tcp_nopush     on;
    
        keepalive_timeout  65;
    
        #gzip  on;
    
        include /etc/nginx/conf.d/*.conf;
    }

    四、启动Docker容器下Nginx服务器

    [root@idclooknet nginx]# docker run -p 80:80 --name mynginx -v $PWD/html:/usr/share/nginx/html:ro -v $PWD/conf/nginx.conf:/etc/nginx/nginx.conf:ro -v $PWD/logs:/var/log/nginx -d nginx

    五、浏览器访问Nginx网页目录

    访问成功,nginx版本 1.13.12 ,因为挂载的目录还没有放任何文件,是一个空目录,所以访问显示是403。

    六、其它

     1、在启动Docker容器的时候,可能发现执行运行命令后马上停止,也没有显示任何错误信息,这时候很难定位问题所在,可以查看Docker日志:

    [root@localhost nginx]# docker logs nginxcontainer
    2018/06/05 16:19:53 [emerg] 1#1: unknown directive "er" in /etc/nginx/nginx.conf:1
    nginx: [emerg] unknown directive "er" in /etc/nginx/nginx.conf:1

    这样就可以快速找到出问题的地方,如上实例,显而易见配置文件出现错误,更多Docker日志命令参数可以查阅官方文档:https://docs.docker.com/engine/reference/commandline/logs/ 

    2、进入运行中容器的内部

    [root@idclooknet ~]# docker start df5bf8ba4fd1
    
    [root@idclooknet ~]# docker exec -it df5bf8ba4fd1 /bin/bash
    
    root@df5bf8ba4fd1:/var/log/nginx# exit #退出容器内部
  • 相关阅读:
    棋盘格渲染
    openvino踩坑之Data type is unsupported
    [video super resolution] ESPCN论文笔记
    tensorflow fp16训练
    openvino安装踩坑记
    python numpy中astype使用不当导致图像出现artifact
    Python~字典
    Django~待解决的问题
    正则表达式应用
    GitLab使用
  • 原文地址:https://www.cnblogs.com/tocode/p/9153078.html
Copyright © 2011-2022 走看看