docker nginx镜像 挂在外部配置文件以及静态目录

nginx默认启动80端口,映射的静态目录是  /usr/share/nginx/html

如果要为一个nginx增加配置,比如使用 8080 端口监听 /usr/share/nginx/html/fizz 目录

这就要使用容器卷,进行目录映射了

 

在/home/fizz/nginx/config 目录下创建 fizz.conf 注意结尾必须是  .conf  

因为在nginx的镜像里 文件 /ect/nginx/nginx.conf 有这样一句话

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

所以nginx的配置文件一定要 .conf 结尾

 

在fizz.conf 中写入

server {
    listen  8080;
    location / {
        root   /usr/share/nginx/html/fizz;
        index  index.html index.htm;
    }
}

 

这里的  /usr/share/nginx/html/fizz 目录指的是容器内的目录

默认容器是没有fizz这个目录的,指导html目录,不过我们可以通过本机卷映射将主机的目录

首先我们在 主机 /home/fizz/nginx/www 目录下创建一个index.html

 

准备好配置文件和静态目录后,我们就使用下面这条命令启动应用

 

docker run -p 8080:8080 -v /home/fizz/nginx/config:/etc/nginx/conf.d -v /home/fizz/nginx/www:/usr/share/nginx/html/fizz nginx

加上-d 就可以后台运行了

 

其中至关重要的两个参数是

 

配置文件的映射

-v /home/fizz/nginx/config:/etc/nginx/conf.d

 

静态目录的映射

-v /home/fizz/nginx/www:/usr/share/nginx/html/fizz

 

启动后访问  http://localhost:8080

就可以看到效果了

 

 

 

 

Docker中使用Nginx时,通常会将Nginx配置文件放在容器中的`/etc/nginx`目录下。Nginx配置文件通常名为`nginx.conf`,这是一个文本文件,包含了一系列指令来定义Nginx服务器的行为。以下是一个基础的Docker Nginx配置示例: ```nginx # nginx.conf 示例 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; server { listen 80; # 或者监听特定的端口,如 8080: listen 8080; server_name example.com; # 替换为你自己的域名或IP location / { root /usr/share/nginx/html; # 根目录,通常是你的网站文件夹 try_files $uri $uri/ =404; # 处理静态文件请求 } # 可能包含gzip、访问控制等其他location块,具体看需求 location ~ /\.ht { deny all; # 防止直接访问隐藏文件 } } } # 运行时可读取环境变量来动态配置 # 如: listen ${NGINX_LISTEN_PORT}; ``` 在Dockerfile中,你可以这样配置: ```dockerfile FROM nginx:latest COPY nginx.conf /etc/nginx/nginx.conf COPY your-website /usr/share/nginx/html ``` 这里的关键点是,你需要创建一个Nginx配置文件nginx.conf),定义好服务器监听的端口、静态文件的路径,以及可能的路由规则。然后,在Dockerfile中,通过`COPY`命令将这个配置文件和你的网站内容复制到镜像中。 如果你有更具体的问题,例如配置的某个部分、环境变量的使用、或者如何映射主机端口到容器内的端口,可以继续提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

拿我格子衫来

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值