【问题标题】:nginx docker issue while startup启动时出现nginx docker问题
【发布时间】:2019-12-17 03:44:16
【问题描述】:

您好,我使用 nginx 运行 docker 容器并收到以下错误:

2019/08/09 11:37:18 [emerg] 1#1:参数数量无效 /etc/nginx/conf.d/default.conf:61 nginx 中的“上游”指令: [emerg] “上游”指令中的参数数量无效 /etc/nginx/conf.d/default.conf:61

我的 docker compose 看起来像这样:

# @version 2018-01-15
# @author -----

version: "3.7"

networks:
  proxy:
    external: true

volumes:
  # curl https://raw.githubusercontent.com/jwilder/nginx-proxy/master/nginx.tmpl > /var/lib/docker/volumes/proxy_tmpl/_data/nginx.tmpl
  conf:
  vhost:
  certs:
  html:
  tmpl:

services:
  # Nginx proxy
  nginx:
    image: nginx
    networks:
      - proxy
    ports:
      - 80:80 
      - 443:443
    volumes:
      - conf:/etc/nginx/conf.d                    # nginx config
      - vhost:/etc/nginx/vhost.d                  # changed configuration of vhosts (needed by Let's Encrypt)
      - html:/usr/share/nginx/html                # challenge files
      - certs:/etc/nginx/certs:ro                 # Let's Encrypt certificates
      - /var/run/docker.sock:/tmp/docker.sock:ro  # docker service
    environment:
      - ENABLE_IPV6=true
    deploy:
      mode: global
      placement:
        constraints: [node.role == manager]
      restart_policy:
        condition: on-failure
        max_attempts: 5
        window: 120s
      resources:
        limits:
          memory: 256M
        reservations:
          memory: 32M
    labels:
      de.blubbbbb.meta.description: "Nginx"
      de.blubbbbb.meta.maintainer: "-----"
      de.blubbbbb.meta.version: "2018-01-15"
      com.github.jrcs.letsencrypt_nginx_proxy_companion.nginx_proxy: ""
    # see also: https://wiki.ssdt-ohio.org/display/rtd/Adjusting+nginx-proxy+Timeout+Configuration          

  # Docker-gen
  dockergen:
    # https://hub.docker.com/r/helder/docker-gen
    image: helder/docker-gen
    networks:
      - proxy
    volumes:
      - conf:/etc/nginx/conf.d
      - vhost:/etc/nginx/vhost.d
      - html:/usr/share/nginx/html
      - certs:/etc/nginx/certs:ro
      - tmpl:/etc/docker-gen/templates:ro     # docker-gen templates
      - /var/run/docker.sock:/tmp/docker.sock:ro    # docker service
    environment:
      ENABLE_IPV6: ""
    command: -notify "docker-label-sighup com.github.jrcs.letsencrypt_nginx_proxy_companion.nginx_proxy" -watch -wait 10s:30s /etc/docker-gen/templates/nginx.tmpl /etc/nginx/conf.d/default.conf
    deploy:
      mode: global
      placement:
        constraints: [node.role == manager]
      restart_policy:
        condition: on-failure
        max_attempts: 5
        window: 120s
      resources:
        limits:
          memory: 256M
        reservations:
          memory: 32M
    labels:
      de.blubbbbb.meta.description: "Docker-gen"
      de.blubbbbb.meta.maintainer: "-----"
      de.blubbbbb.meta.version: "2018-01-15"
      com.github.jrcs.letsencrypt_nginx_proxy_companion.docker_gen: ""

  # Lets Encrypt
  letsencrypt:
    image: jrcs/letsencrypt-nginx-proxy-companion
    networks:
      - proxy
    volumes:
      - conf:/etc/nginx/conf.d
      - vhost:/etc/nginx/vhost.d
      - html:/usr/share/nginx/html
      - certs:/etc/nginx/certs:rw
      - /var/run/docker.sock:/var/run/docker.sock:ro
    deploy:
      mode: global
      placement:
        constraints: [node.role == manager]
      restart_policy:
        condition: on-failure
        max_attempts: 5
        window: 120s
      resources:
        limits:
          memory: 256M
        reservations:
          memory: 32M
    labels:
      de.blubbbbb.meta.description: "Letsencrypt Nginx Proxy Companion"
      de.blubbbbb.meta.maintainer: "-----"
      de.blubbbbb.meta.version: "2018-01-15"

我是这样运行的:

 docker stack deploy proxy -c docker-compose.yml

可能是什么问题?提前致谢。

来自conf的上游部分

upstream  {
                                # Cannot connect to network of this container
                                server 127.0.0.1 down;
                                # Cannot connect to network of this container
                                server 127.0.0.1 down;
                                # Cannot connect to network of this container
                                server 127.0.0.1 down;
                                ## Can be connected with "proxy" network
                        # tools_adminer.1.n1j3poc9mo507somuhyf7adrd
                        server 10.0.35.3:8080;
                                # Cannot connect to network of this container
                                server 127.0.0.1 down;
                                # Cannot connect to network of this container
                                server 127.0.0.1 down;
}

【问题讨论】:

  • 你需要显示你的 nginx 配置 /etc/nginx/conf.d/default.conf
  • 手动运行 nginx 容器并测试 nginx 配置是否正常。可能会帮助你找出问题所在。看起来像是 nginx conf 中的问题
  • @ScottStensland 我认为是自动生成的文件
  • 当我手动运行容器时,它会在启动时立即停止。和 compose 一样

标签: docker nginx


【解决方案1】:

在我的例子中,有一个管理员 docker 阻止了 nginx

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-20
    • 2018-07-31
    • 2021-02-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多