我试图设置无人驾驶飞机,但是当运行构建时,它在克隆步骤中失败。我很确定这是一个DNS问题,我只是配置错误的运行程序,但我只是不知道它。
这是我的坞撰写文件(我已经删除了一些信息):
drone:
image: drone/drone:2.0.4
container_name: drone
hostname: drone
restart: unless-stopped
depends_on:
- postgres
environment:
- DRONE_GITHUB_SERVER=https://github.com
- DRONE_GITHUB_CLIENT_ID=
- DRONE_GITHUB_CLIENT_SECRET=
- DRONE_RPC_SECRET=
- DRONE_SERVER_HOST=
- DRONE_SERVER_PROTO=https
- DRONE_DATABASE_DRIVER=postgres
- DRONE_DATABASE_DATASOURCE=postgres://@postgres:5432/drone?sslmode=disable
networks:
- traefik-network
volumes:
- drone-data:/data
drone-runner-1:
image: drone/drone-runner-docker:1.6.3
container_name: drone-runner-1
hostname: drone-runner-1
restart: unless-stopped
environment:
- DRONE_RPC_HOST=
- DRONE_RPC_PROTO=https
- DRONE_RPC_SECRET=
- DRONE_RUNNER_CAPACITY=2
- DRONE_RUNNER_NAME=${HOSTNAME}
- DRONE_RUNNER_NETWORKS=traefik
volumes:
- "/var/run/docker.sock:/var/run/docker.sock:rw"
networks:
traefik-network:
external: true
name: traefik
我确保我可以从traefik网络中选择github.com,所以这不应该是个问题,对吗?但是,当我尝试从runner容器中ping github时,我得到了以下输出:
root@Ubuntu-2004-focal-64-minimal ~ # docker exec -it drone-runner-1 nslookup github.com
Server: 127.0.0.11
Address: 127.0.0.11:53
Non-authoritative answer:
*** Can't find github.com: No answer
Non-authoritative answer:
Name: github.com
Address: 140.82.121.3
另外,下面是克隆步骤的输出:
Initialized empty Git repository in /drone/src/.git/
+ git fetch origin +refs/heads/master:
fatal: unable to access 'https://github.com/[REPO]': Could not resolve host: github.com
发布于 2021-08-11 14:56:27
我想您的覆盖网络有一个问题,它是由docker命令创建的。能够平平GitHub的主机意味着我们阻塞了码头网络中的某个地方。您可以在停靠桥上执行tcpdump
以跟踪拦截器。
您可以在您的docker上做一些更改-Compose.yaml来测试它,如下所示,作为解决办法。在容器上添加特权,只访问主机DNS。
drone:
image: drone/drone:2.0.4
privileged: true
container_name: drone
hostname: drone
https://devops.stackexchange.com/questions/14460
复制相似问题