Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
带有Docker的Nginx代理_Docker_Nginx_Docker Compose - Fatal编程技术网

带有Docker的Nginx代理

带有Docker的Nginx代理,docker,nginx,docker-compose,Docker,Nginx,Docker Compose,我尝试使用Docker和Nginx代理安装新的应用程序。我的设置很好,只有1个端口通过docker-compose.yml共享。但我需要在容器和主机之间共享2个端口 对于2个端口,我的代理返回错误502: version: '3' services: foody: build: ./config/docker container_name: my_app environment: #- NODE_ENV=production - LOCAL_

我尝试使用Docker和Nginx代理安装新的应用程序。我的设置很好,只有1个端口通过docker-compose.yml共享。但我需要在容器和主机之间共享2个端口

对于2个端口,我的代理返回错误502:

version: '3'

services:
  foody:
    build: ./config/docker
    container_name: my_app
    environment:
      #- NODE_ENV=production
      - LOCAL_USER_ID=$USER_ID
      - LOCAL_GROUP_ID=$GROUP_ID
      - PGID=1000
      - PUID=1000
      - TZ=Europe/London
      - VIRTUAL_HOST=myapp.${SITE_URL},api-myapp.${SITE_URL}
      - VIRTUAL_PORT=3339,3340
      - LETSENCRYPT_HOST=myapp.${SITE_URL}
      - LETSENCRYPT_EMAIL=${MAILER_DEFAUT_SENDER_ADDRESS}
    ports:
      - 3339:3000
      - 3340:1337 // Work if i comment or remove this line
    volumes:
      - .:/app

networks:
  default:
    external:
      name: nginx-proxy
我真的不明白为什么只有在docker compose文件上共享1个端口时,我的代理才能工作…:/

发件人:

多个端口
如果容器公开多个端口,nginx proxy将默认为在端口80上运行的服务。如果需要指定不同的端口,可以设置虚拟端口env var以选择不同的端口。如果您的容器仅公开一个端口,并且它具有虚拟主机环境变量集,则将选择该端口。

容器中的我的日志:

nginx.1    | 2019/12/19 06:33:41 [error] 2227#2227: *151845 no live upstreams while connecting to upstream, client: xx.xxx.xxx.xx, server: myapp.mydomain.com, request: "GET /favicon.ico HTTP/2.0", upstream: "http://myapp.mydomain.com/favicon.ico", host: "myapp.mydomain.com", referrer: "https://myapp.mydomain.com/"
有人已经修复了这个简单的用例吗


谢谢大家!

关于这个错误,日志告诉了你什么?嗨:)我已经用这些信息编辑了我的第一篇文章。你的意思是
3340:3000
对吗?不,
3339:3000
是客户端应用程序,
3340:1337
是api。正如我所想的:文档提到的是“端口”,而不是使用
VIRTUAL\u port
设置的“端口”(多个)。。。