相关疑难解决方法(0)

Gitlab CI运行器无法公开嵌套Docker容器的端口

当使用GitLab CI以及它时gitlab-ci-multi-runner,我无法获得内部启动的Docker容器以将其端口暴露给"主机",这是运行构建的Docker映像.

我的.gitlab-ci.yml档案:

test:
  image: docker
  stage: test
  services:
    - docker:dind
  script:
    - APP_CONTAINER_ID=`docker run -d --privileged -p "9143:9143" appropriate/nc nc -l 9143`
    - netstat -a
    - docker exec $APP_CONTAINER_ID netstat -a
    - nc -v localhost 9143
Run Code Online (Sandbox Code Playgroud)

我的命令:

gitlab-ci-multi-runner exec docker --docker-privileged test
Run Code Online (Sandbox Code Playgroud)

输出:

$ netstat -a
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 runner--project-1-concurrent-0:54664 docker:2375             TIME_WAIT
tcp        0      0 runner--project-1-concurrent-0:54666 docker:2375             TIME_WAIT
Active UNIX domain …
Run Code Online (Sandbox Code Playgroud)

gitlab docker gitlab-ci docker-compose

22
推荐指数
2
解决办法
8004
查看次数

标签 统计

docker ×1

docker-compose ×1

gitlab ×1

gitlab-ci ×1