Docker 无人机CI runner可以';找不到gitea服务器
我正在尝试使用无人机运行gitea服务器。它们目前都托管在同一台ubuntu机器上,docker容器是通过docker-compose.yml文件设置的 启动所有服务时,我在无人机跑步者服务的日志中发现以下错误:Docker 无人机CI runner可以';找不到gitea服务器,docker,networking,continuous-integration,drone,gitea,Docker,Networking,Continuous Integration,Drone,Gitea,我正在尝试使用无人机运行gitea服务器。它们目前都托管在同一台ubuntu机器上,docker容器是通过docker-compose.yml文件设置的 启动所有服务时,我在无人机跑步者服务的日志中发现以下错误: time="2020-08-12T19:10:42Z" level=error msg="cannot ping the remote server" error="Post http://drone:80/rpc/v2/ping: d
time="2020-08-12T19:10:42Z" level=error msg="cannot ping the remote server" error="Post http://drone:80/rpc/v2/ping: dial tcp: lookup drone on 127.0.0.11:53: no such host"
两者http://gitea 及http://drone 指向localhost(通过/etc/hosts)。遗憾的是,我不明白无人机跑步者如何或为什么找不到服务器。在我的4个容器上调用“docker container inspect”表示它们都连接到同一网络(drone_和_gitea_giteanet)。这也是我在DRONE\u RUNNER\u NETWORKS环境变量中设置的网络
这是我的docker-compose.yml文件的外观:
version: "3.8"
# Create named volumes for gitea server, gitea database and drone server
volumes:
gitea:
gitea-db:
drone:
# Create shared network for gitea and drone
networks:
giteanet:
external: false
services:
gitea:
container_name: gitea
image: gitea/gitea:1
#restart: always
environment:
- APP_NAME="Automated Student Assessment Tool"
- USER_UID=1000
- USER_GID=1000
- ROOT_URL=http://gitea:3000
- DB_TYPE=postgres
- DB_HOST=gitea-db:5432
- DB_NAME=gitea
- DB_USER=gitea
- DB_PASSWD=gitea
networks:
- giteanet
ports:
- "3000:3000"
- "222:22"
volumes:
- gitea:/data
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
depends_on:
- gitea-db
gitea-db:
container_name: gitea-db
image: postgres:9.6
#restart: always
environment:
- POSTGRES_USER=gitea
- POSTGRES_PASSWORD=gitea
- POSTGRES_DB=gitea
networks:
- giteanet
volumes:
- gitea-db:/var/lib/postgresql/data
drone-server:
container_name: drone-server
image: drone/drone:1
#restart: always
environment:
# General server settings
- DRONE_SERVER_HOST=drone:80
- DRONE_SERVER_PROTO=http
- DRONE_RPC_SECRET=topsecret
# Gitea Config
- DRONE_GITEA_SERVER=http://gitea:3000
- DRONE_GITEA_CLIENT_ID=<CLIENT ID>
- DRONE_GITEA_CLIENT_SECRET=<CLIENT SECRET>
# Create Admin User, name should be the same as Gitea Admin user
- DRONE_USER_CREATE=username:AdminUser,admin:true
# Drone Logs Settings
- DRONE_LOGS_PRETTY=true
- DRONE_LOGS_COLOR=true
networks:
- giteanet
ports:
- "80:80"
volumes:
- drone:/data
depends_on:
- gitea
drone-agent:
container_name: drone-agent
image: drone/drone-runner-docker:1
#restart: always
environment:
- DRONE_RPC_PROTO=http
- DRONE_RPC_HOST=drone:80
- DRONE_RPC_SECRET=topsecret
- DRONE_RUNNER_CAPACITY=1
- DRONE_RUNNER_NETWORKS=drone_and_gitea_giteanet
networks:
- giteanet
volumes:
- /var/run/docker.sock:/var/run/docker.sock
depends_on:
- drone-server
版本:“3.8”
#为gitea服务器、gitea数据库和drone服务器创建命名卷
卷数:
吉特亚:
gitea数据库:
无人机:
#为gitea和drone创建共享网络
网络:
giteanet:
外部:错误
服务:
吉特亚:
容器名称:gitea
图片:gitea/gitea:1
#重新启动:始终
环境:
-APP_NAME=“自动学生评估工具”
-用户UID=1000
-用户_GID=1000
-根地址=http://gitea:3000
-DB_TYPE=postgres
-DB_HOST=gitea DB:5432
-DB_NAME=gitea
-DB_USER=gitea
-DB_PASSWD=gitea
网络:
-吉特内特
端口:
- "3000:3000"
- "222:22"
卷数:
-gitea:/data
-/etc/timezone:/etc/timezone:ro
-/etc/localtime:/etc/localtime:ro
取决于:
-gitea数据库
gitea数据库:
容器名称:gitea db
图片:博士后:9.6
#重新启动:始终
环境:
-POSTGRES_USER=gitea
-POSTGRES_PASSWORD=gitea
-POSTGRES_DB=gitea
网络:
-吉特内特
卷数:
-gitea db:/var/lib/postgresql/data
无人机服务器:
容器名称:无人机服务器
图像:无人机/无人机:1
#重新启动:始终
环境:
#常规服务器设置
-无人机\服务器\主机=无人机:80
-无人机服务器协议=http
-无人机(DRONE_RPC_SECRET)=最高机密
#Gitea配置
-DRONE_GITEA_服务器=http://gitea:3000
-无人机\u GITEA\u客户端\u ID=
-无人机\u GITEA\u客户\u机密=
#创建管理员用户,名称应与Gitea管理员用户相同
-DRONE\u USER\u CREATE=用户名:AdminUser,admin:true
#无人机日志设置
-DRONE_LOGS_PRETTY=真
-无人机日志颜色=真
网络:
-吉特内特
端口:
- "80:80"
卷数:
-无人机:/data
取决于:
-吉特亚
无人机代理:
集装箱名称:无人机代理
图片:无人机/无人机跑步者码头工人:1
#重新启动:始终
环境:
-DRONE_RPC_PROTO=http
-无人机\u RPC\u主机=无人机:80
-无人机(DRONE_RPC_SECRET)=最高机密
-无人驾驶飞机的载机容量=1
-无人机网络=无人机网络
网络:
-吉特内特
卷数:
-/var/run/docker.sock:/var/run/docker.sock
取决于:
-无人机服务器
如果有人能看看这个问题并帮我解决,那将对我有很大帮助!:) 网络
drone\u和\u gitea\u giteanet
未声明。你试过没有这个选项吗?gitea和无人机容器应该能够在同一网络中通信。或者尝试使用DRONE\u RUNNER\u NETWORKS=giteanet
。