【问题标题】:traefik send http over wrong port to gitlabtraefik 通过错误的端口向 gitlab 发送 http
【发布时间】:2019-08-27 05:47:32
【问题描述】:

我在 traefik 代理后面设置了一个 gitlab 服务器,但我的 gitlab sshd 日志显示 traefik 通过 22 端口向 gitlab 发送 http 请求,导致内部服务器错误。

 ==> /var/log/gitlab/sshd/current <==
gitlab    | 2019-08-27_03:39:15.42508 Bad protocol version identification 'GET / HTTP/1.1' from 192.168.144.2 port 33462

我发现有一个类似的讨论here,但是答案没有用,有没有办法将gitlab后端从22更改为80?

以下是我的代码和配置。

# traefik docker-compose.yaml
version: '3'
services: 
  traefik:
    container_name: traefik
    image: traefik
    command: --api
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - ./traefik.toml:/traefik.toml
    networks:
      - web
    ports:
      - 8080:8080
      - 80:80
      - 443:443
networks:
  web:
    external: true
# traefik.toml
debug = false
logLevel = "INFO"
defaultEntryPoints = ["http","https"]

[entryPoints]
[entryPoints.http]
address = ":80"

[docker]
endpoint = "unix:///var/run/docker.sock"
domain = "mydomain.com"
watch = true
exposedByDefault = false
# gitlab docker-compose.yaml
version: '3'
services:
  # expose 22 80 443
  gitlab:
    container_name: gitlab
    image: gitlab/gitlab-ee
    volumes:
      - /nsrv/gitlab/config:/etc/gitlab
      - /nsrv/gitlab/logs:/var/log/gitlab
      - /nsrv/gitlab/data:/var/opt/gitlab
    labels:
      - traefik.enable=true
      - traefik.frontend.rule=Host:gitlab.mydomain.com
      - traefik.prot=80
    networks:
      - web
    restart: always   

networks:
  web:
    external: true

【问题讨论】:

    标签: docker gitlab traefik


    【解决方案1】:

    您的 gitlab docker-compose.yaml 文件中似乎有错字。

    用 traefik.port 替换 traefik.prot 应该会更好。

    【讨论】:

    • 哦,那天我一定是头晕目眩。在我修改错字后,一切都很好。非常感谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-12
    • 1970-01-01
    • 1970-01-01
    • 2019-07-28
    • 2014-12-06
    • 2012-08-13
    相关资源
    最近更新 更多