Ubuntu 作为代理的Nginx容器
我最近开始学习Docker,并发现了一个名为Portainer的工具来管理Docker容器和图像。我让它作为一个容器在远程服务器上运行,但它使用了端口9000,我想改为80,所以我考虑使用代理。我决定使用Nginx(我以前从未使用过)作为容器。我按照以下说明启动Nginx:Ubuntu 作为代理的Nginx容器,ubuntu,docker,nginx,proxypass,Ubuntu,Docker,Nginx,Proxypass,我最近开始学习Docker,并发现了一个名为Portainer的工具来管理Docker容器和图像。我让它作为一个容器在远程服务器上运行,但它使用了端口9000,我想改为80,所以我考虑使用代理。我决定使用Nginx(我以前从未使用过)作为容器。我按照以下说明启动Nginx: docker run --name mynginx2 -v /var/nginx/conf/nginx.conf:/etc/nginx/nginx.conf:ro -P -d nginx /var/nginx/conf/n
docker run --name mynginx2 -v /var/nginx/conf/nginx.conf:/etc/nginx/nginx.conf:ro -P -d nginx
/var/nginx/conf/nginx.conf文件如下所示:
events {
worker_connections 1024;
}
http {
server {
location / {
proxy_pass http://localhost:9000;
}
}
}
docker run -it --name myportainer -v "/var/run/docker.sock:/var/run/docker.sock" -d portainer/portainer
docker run --name mynginx2 -v /var/nginx/conf/nginx.conf:/etc/nginx/nginx.conf:ro -p 80:80 -P -d --link myportainer:myportainer nginx
由于容器启动期间出现错误,必须插入辅助线程连接。当我转到远程服务器的ip(比如:)时,我希望Portainer会出现,但什么也没有发生。我甚至没有收到回复的状态码
我错过了什么
亲切问候,,
Daniel像这样运行您的
portainer
容器:
events {
worker_connections 1024;
}
http {
server {
location / {
proxy_pass http://localhost:9000;
}
}
}
docker run -it --name myportainer -v "/var/run/docker.sock:/var/run/docker.sock" -d portainer/portainer
docker run --name mynginx2 -v /var/nginx/conf/nginx.conf:/etc/nginx/nginx.conf:ro -p 80:80 -P -d --link myportainer:myportainer nginx
然后像这样运行nginx
:
events {
worker_connections 1024;
}
http {
server {
location / {
proxy_pass http://localhost:9000;
}
}
}
docker run -it --name myportainer -v "/var/run/docker.sock:/var/run/docker.sock" -d portainer/portainer
docker run --name mynginx2 -v /var/nginx/conf/nginx.conf:/etc/nginx/nginx.conf:ro -p 80:80 -P -d --link myportainer:myportainer nginx
在您的nginx
配置中,使用以下命令:
events {
worker_connections 1024;
}
http {
server {
listen 80;
location / {
proxy_pass http://myportainer:9000;
}
}
}
此外,上面的命令也应该起作用,从长远来看,使用docker compose将更容易:
这就是您的docker compose.yml
应该是什么样子:
version: "2"
services:
proxy:
image: nginx:latest
container_name: proxy
ports:
- "80:80"
volumes:
- /var/nginx/conf/nginx.conf:/etc/nginx/nginx.conf
portainer:
image: portainer/portainer
container_name: myportainer
然后运行
docker compose up-d
远程主机上是否运行nginx
容器?可能是由于配置错误,它确实停止了运行。它与Portainer运行在同一个远程主机上,我一直在监视和检查它——nginx容器正在运行。