1

我在固定的内部 IP 上有一个 GitLab 实例,如果主机名指向该 IP,则在客户端上配置主机文件。

但是我们无法在使用主机名时使 Drone 工作。我们在端口 80 上有 Gitlab,在端口 8000 上有 Drone。当它配置为固定 IP 时,它确实可以工作:

我们的撰写文件:

version: '2'
services:
    gitlab:
      image: 'gitlab/gitlab-ce:latest'
      restart: always
      environment:
        GITLAB_OMNIBUS_CONFIG: |
          external_url 'http://our.host.name.com'
          gitlab_rails['gitlab_shell_ssh_port'] = 22
          # Add any other gitlab.rb configuration here, each on its own line
      ports:
        - '80:80'
        - '443:443'
        - '22:22'
      volumes:
        - '/srv/gitlab/config:/etc/gitlab'
        - '/srv/gitlab/logs:/var/log/gitlab'
        - '/srv/gitlab/data:/var/opt/gitlab'

    drone-server:
      image: drone/drone:0.7.3
      links:
        - "gitlab:our.host.name.com"
      ports:
        - "8000:8000"
      volumes:
        - /home/drone:/var/lib/drone/
        - /home/drone/cache:/var/lib/drone/cache/
        - /home/foresight/keys:/var/lib/drone/keys
      environment:
        DRONE_OPEN: "true"
        DRONE_SERVER_ADDR: ":8000"
        DRONE_HOST: "http://our.host.name.com:8000"
        DRONE_ADMIN: <redacted>
        DRONE_GITLAB: "true"
        DRONE_GITLAB_URL: "http://our.host.name.com"
        DRONE_GITLAB_CLIENT: <redacted>
        DRONE_GITLAB_SECRET: <redacted>
        DRONE_SECRET: <redacted>
    drone-agent:
      image: drone/drone:0.7.3
      command: agent
      depends_on:
        - drone-server
      volumes:
        - /var/run/docker.sock:/var/run/docker.sock
      environment:
        DRONE_SERVER: ws://drone-server:8000/ws/broker
        DRONE_DEBUG: "true"
        DRONE_SECRET: <redacted>

当我以这种方式配置它时,无人机似乎不接受来自 GitLab 的触发器。

自然,我重置了无人机缓存,更新了回调 url 以使用域名,并重新激活了存储库。

我找不到任何可以深入了解触发器失败原因的无人机日志文件。

4

0 回答 0