您好,欢迎来到爱够旅游网。
搜索
您的当前位置:首页将Docker中nginx静态资源目录映射到宿主机的某个目录及配置文件映射到宿主机

将Docker中nginx静态资源目录映射到宿主机的某个目录及配置文件映射到宿主机

来源:爱够旅游网
mkdir -p /path/to/nginx-static

其中,/path/to/是自定义的路径,你可以根据实际情况进行调整。

docker run -d -p 8002:80 --name my-nginx \
-v /path/to/nginx-static:/usr/share/nginx/html \
nginx:1.12.2

这条命令做了以下几件事情:

  • -d:以守护进程模式运行容器。
  • -p 8002:80:将宿主机的8002端口映射到容器的80端口,以便通过浏览器访问Nginx服务。
  • --name my-nginx:为容器指定一个名称(my-nginx),方便后续管理。
  • -v /path/to/nginx-static:/usr/share/nginx/html:将宿主机上的nginx-static目录映射到容器内的/usr/share/nginx/html目录,这是Nginx默认的静态资源目录。

三、验证映射是否成功

四、注意事项

docker run -d -p 8003:80 --name my-nginx -v /home/sam/nginx:/usr/share/nginx/html -v /home/sam/conf/nginx.conf:/etc/nginx/nginx.conf nginx:1.12.2

修改映射后的配置文件后记得重启docker服务,比如设置301跳转,以nginx 1.12.2为例,nginx.conf修改如下:

    server {
        listen 80;
        server_name yourdomain.com;  # 替换为你的域名
    
        # 其他配置...
    
        # 实现特定路径的301重定向
        location /abc {
            return 301  http://www.xxxxxxxxxx.com;
        }

        location / {
            # 默认配置,例如代理传递、静态文件服务等
            # 例如,如果你想让 Nginx 返回一个简单的 "Hello, World!" 页面,可以这样配置:
            root /usr/share/nginx/html;
            index index.html;
        }
    
        # 其他 location 块配置...
    }
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;

    server {
        listen 80;
        server_name yourdomain.com;  # 替换为你的域名
    
        # 其他配置...
    
        # 实现特定路径的301重定向
        location /abc {
            return 301  http://www.xxxxxxxxxx.com;
        }

        location / {
            # 默认配置,例如代理传递、静态文件服务等
            # 例如,如果你想让 Nginx 返回一个简单的 "Hello, World!" 页面,可以这样配置:
            root /usr/share/nginx/html;
            index index.html;
        }
    
        # 其他 location 块配置...
    }

    include /etc/nginx/conf.d/*.conf;
}

注意以上配置内容。

重启docker中nginx:

[root@localhost home]# docker ps
CONTAINER ID   IMAGE                       COMMAND                   CREATED          STATUS             PORTS                                            NAMES
22183dc1c4ce   nginx:1.12.2                "nginx -g 'daemon of…"   43 minutes ago   Up 3 minutes       0.0.0.0:8001->80/tcp, :::8001->80/tcp            my-nginx-v
[root@localhost home]# docker restart my-nginx-v
my-nginx-v

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- igbc.cn 版权所有 湘ICP备2023023988号-5

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务