首页 > 系统相关 >dockerNginx代理本地目录

dockerNginx代理本地目录

时间:2022-11-03 19:24:08浏览次数:53  
标签:http 本地 etc nginx conf amydata dockerNginx 目录 log

dockerNginx代理本地目录

ssl_certificate cert/5900588_test.zk.limengkai.work.pem;
ssl_certificate_key cert/5900588_test.zk.limengkai.work.key;


docker run -tdi --rm -v  /containers/nginx:/etc/nginx -v /amydata:/amydata -v /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime -p 443:443 -p 80:80  --name  nginx1  nginx 

docker 代理本地目录

1.选择要挂载的目录

博主选择/amydata目录对外暴露

2.配置nginx文件

保存在宿主机 /a_nginx_conf/nginx.conf 修改 38 行,你要进行暴露的文件夹

location / {
    #代理本地文件夹
    root /amydata;
    autoindex on;
}
mkdir -p /a_nginx_conf

mkdir -p /amydata

完整的 /a_nginx_conf/nginx.conf

worker_processes  4;

events {
    worker_connections  1024;
}

error_log  /var/log/nginx/error.log warn;
pid        /var/run/nginx.pid;

http {
    include       mime.types;
    default_type  application/octet-stream;
    
    # 防止中文乱码
    charset utf-8;


    # 默认为on,显示出文件的确切大小,单位是bytes。
    # 改为off后,显示出文件的大概大小,单位是kB或者MB或者GB
    autoindex_exact_size off;

    # 默认为off,显示的文件时间为GMT时间。
    # 注意:改为on后,显示的文件时间为文件的服务器时间
    autoindex_localtime on;


    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;

    keepalive_timeout  65;

    server {
        listen       80;
        server_name  localhost;
        
        #配置跨域
        add_header Access-Control-Allow-Origin *;
        add_header Access-Control-Allow-Headers X-Requested-With;
        add_header Access-Control-Allow-Methods GET,POST,OPTIONS;

        location / {
            #代理本地文件夹
            root /amydata;
            autoindex on;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

    }
}

启动挂在容器,开启文件服务

对外暴露 服务器的 50000 端口 到 nginx 内

docker run -tdi --rm -v  /a_nginx_conf/nginx.conf:/etc/nginx/nginx.conf -v /amydata:/amydata -v /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime -p 50000:80  --name  nginx1  nginx

docker run -tdi --restart=always -v  /a_nginx_conf/nginx.conf:/etc/nginx/nginx.conf -v /amydata:/amydata -v /usr/share/zoneinfo/Asia/Shanghai:/etc/localtime -p 50000:80  --name  nginx1  nginx

访问 即可 http://(域名)|(ip):50000

/amydata

nginx 配置文件

find / -name "*nginx.conf*"
find: '/proc/1/map_files': Operation not permitted
find: '/proc/6/map_files': Operation not permitted
find: '/proc/11/map_files': Operation not permitted
/etc/nginx/nginx.conf

原有配置文件

root@88bd90de686b:/# cat < /etc/nginx/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;
}

修改的配置文件

保存在宿主机 /a_nginx_conf/nginx.conf

worker_processes  1;

events {
    worker_connections  1024;
}

error_log  /var/log/nginx/error.log warn;
pid        /var/run/nginx.pid;

http {
    include       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;

    keepalive_timeout  65;

    server {
        listen       80;
        server_name  localhost;
        
        #配置跨域
        add_header Access-Control-Allow-Origin *;
        add_header Access-Control-Allow-Headers X-Requested-With;
        add_header Access-Control-Allow-Methods GET,POST,OPTIONS;

        location / {
            #代理本地文件夹
            root /amydata;
            autoindex on;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

    }
}

命令记录

docker stop nginx1 && docker rm nginx1

docker run -tdi  --name  nginx1  nginx  /bin/bash

标签:http,本地,etc,nginx,conf,amydata,dockerNginx,目录,log
From: https://www.cnblogs.com/ltgybyb/p/16855547.html

相关文章

  • IDEA用Java创建删除文件,获取文件相关信息,创建删除目录操作
     目录   一、Java创建文件的三种方式二、Java删除文件三、Java获取文件相关信息四、创建删除目录操作五、Java删除目......
  • luffy项目之虚拟环境和项目目录调整
    一、企业项目类型#1面向互联网用户:商城类项目-微信小程序商城#2面向互联网用户:二手交易类的-咸鱼-转转#3公司内部项目:python写......
  • 将本地所有分支推送到远程
    准备:手动将所有分支签出到本地存储库(签出所有分支的脚本如下所示),gitpushorigin'*:*'用于将所有分支检出到本地存储库的.sh脚本:forbranchin`gitbranch-a|......
  • mysql 本地navicat设置远程登录
    1usemysql;2selecthost,user,authentication_string,pluginfromuser;3updateusersethost='%'whereuser='root';123三个语句顺序执行完毕后重新启......
  • Python实验报告——第10章 文件及目录操作
    实验报告【实验目的】 1.掌握Python自带的函数进行基本文件操作。2.掌握Python内置的os模块及其子模块os.path进行目录相关的操作。【实验条件】1.PC机或者远程编......
  • SSH上传本地文件到linux服务器
    4、上传目录到服务器scp-rlocal_dirusername@servername:remote_dir例如:scp-rtestroot@192.168.0.101:/var/www/把当前目录下的test目录上传到服务器的/var/www......
  • Linux-文件与目录操作命令-硬链接与软链接
    1.Linux链接概念Linux链接分两种,一种被称为硬链接(HardLink),相当于windows里的复制。另一种被称为符号链接(SymbolicLink),也叫软链接。相当于windows里的快捷键。默认情况下......
  • 上传Markdown文件内的本地图片至博客园
    前言习惯使用markdown的人应该都知道Typora这个神器,它非常简洁高效。虽然博客园的在线markdown编辑器也不错,但毕竟是网页版,每次写东西需要登录系统-进后台-找到文章-编辑-......
  • Git 删除本地代码文件后重新拉取服务器最新代码
    删除本地文件后,想从远程仓库中重新Pull最新代码,但是执行了gitpull命令后始终无法拉取下来,提示Alreadyup-to-date.原因:当前本地库处于另一个分支中,需将本分支Head......
  • .NET必修课系列-目录
    专题01-异步编程专题02-LINQ专题03-依赖注入专题04-配置系统专题05-日志系统专题06-EFCore专题07-表达式目录树专题08-新语法专题09-WebAPI专题10-前后端分离开发......