我有一个本地Nginx
安装,该安装使用自定义配置文件将不同的服务和Web应用程序路由到单个端口。
Nginx
配置文件如下所示:
server {
listen 8080;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
}
location /api/login {
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server %host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://localhost:8181;
client_max_body_size 10M;
}
location /api/accountopening {
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server %host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://localhost:8282;
client_max_body_size 10M;
}
...
我正在尝试对DockerHub中的Docker
和Nginx
官方映像执行相同的操作,但是我无法这样做。
他们在文档中说我应该做类似的事情:
docker run --name cor-nginx \
-v ~/dev/nginx/conf/nginx.conf:/etc/nginx/nginx.conf:ro \
-d \
-p 8080:80 nginx
创建卷并指定自定义配置文件,但到目前为止没有结果。
有人做过类似的事情吗?
非常感谢!
答案 0 :(得分:0)
请执行您的Nginx
容器,并检查配置文件的路径是否有效。
我认为您输入的路径错误,默认为:/etc/nginx/conf.d
。
此外,您应该使用Dockerfile来构建更改后的映像,这比将选项作为参数传递给Docker更好,更清晰。
您还应该删除现有的-默认Nginx
配置。
我认为这对您有很大帮助: