从 Gitlab CI 服务连接回主容器

Connect back to main container from GitlabCI service

我正在使用 Gitlab CI 与 docker 执行器和 services

在测试期间,我在主脚本中启动了一个服务器,我需要该服务向主脚本发出请求。

有没有 address/alias 我可以用来连接回主构建脚本?类似于 host.docker.internal.

伪例子:

test:
  services:
    name: ping-pong-service
    variables:
      CALLBACK_ADDRESS: 'http://host.docker.internal:8090/pong'
  script:
  - "Start a server at 0.0.0.0:8090"
  - curl http://ping-pong-service:80/ping

假设 ping-pong-service 是一个服务,当在 :80 收到任何 http 请求时,向 CALLBACK_ADDRESS 执行新请求。我应该在 CALLBACK_ADDRESS 中输入什么以连接回主容器?

我试着查看运行器上启动了哪些容器,但主容器在 docker 网络中似乎没有可预测的名称或别名。


环境:

当为 networks per job 使用 FF_NETWORK_PER_BUILD 功能标志时,使用 services: 启动的容器可以使用网络别名 build

访问主作业容器

假设您的服务按照您的描述配置,您将使用:

variables:
  CALLBACK_ADDRESS: 'http://build:8090/pong'

注意:这不适用于在该场景的作业容器中使用 docker run 启动的容器。