我在VPS上使用Gitlab Runner,gitlabrunner在容器中运行。
我想知道是否有命令列出第一级的所有容器。
当我的跑步者接受一项工作,并输入docker ps时,我会看到runner容器列出。但它应该在我的第一个码头集装箱里运行。
对接者如何区分这一点?

这是我的跑步者的docker-compose.yml:
version: "3"
services:
runner:
image: gitlab/gitlab-runner:alpine
restart: always
volumes:
- /home/adrien/runners/coretest/config:/etc/gitlab-runner
- /var/run/docker.sock:/var/run/docker.sock我的config.toml:
concurrent = 1
check_interval = 0
[session_server]
session_timeout = 1800
[[runners]]
name = "My Docker Runner"
url = "https://gitlab.com/"
token = "<my-token>"
executor = "docker"
[runners.custom_build_dir]
[runners.docker]
tls_verify = false
image = "docker:stable"
privileged = false
disable_entrypoint_overwrite = false
oom_kill_disable = false
disable_cache = false
volumes = ["/var/run/docker.sock:/var/run/docker.sock", "/cache"]
shm_size = 0
[runners.cache]
[runners.cache.s3]
[runners.cache.gcs]发布于 2019-10-30 00:38:51
您使用的是对接运行程序,它在运行程序中安装了对接者袜子,这允许运行者在主机的停靠守护进程上运行新的容器。CI作业不会在coretest_runner_1容器中运行;coretest_runner_1容器的任务是接受来自Gitlab的作业,然后操作主机的Docker守护进程来拆分容器以在其中运行那些CI作业。您的runner容器是您的coretest_runner_1容器的同级,而不是它的子容器。
如果您希望CI作业在coretest_runner_1容器中运行,则需要将您的runners.executor更改为"shell",以便它在与gitlab守护进程(容器中的)相同的上下文中运行(参见遗嘱执行人医生)。
请注意,这意味着你的工作不会变得干净、孤立,而且可能会相互冲突。
https://stackoverflow.com/questions/58616993
复制相似问题