gpt4 book ai didi

docker - Gitlab CI Runner Docker Executor 公开端口

转载 作者:行者123 更新时间:2023-12-02 01:12:54 27 4
gpt4 key购买 nike

我有 gitlab ci 和 gitlab 容器。一个项目注册到 gitlab runner使用 docker 执行器。一切都好。我将特权模式设置为 true。有关于 docker run 的标志,例如卷共享、特权模式、图像、服务、链接等。但是我在 runner.dockers 部分找不到关于端口公开的标志。我的目标是运行一个容器可以与它的端口通信的管道。

是否可以用gitlab runner ci来实现这个问题。

最佳答案

通常这就是服务的用途。您需要一个要在其上公开端口的容器并将其定义为服务。这样,就没有暴露的端口,但有一个服务链接可用于容器间通信。这对 Docker 执行器有效,在 Kubernetes 执行器中,所有服务都是 pod 的一部分,因此可以直接在 localhost 上使用。

换句话说:例如,如果您的构建作业需要 PostgreSQL 在其默认端口 5432 上运行,您只需启动 postgres:latest 作为您作业的服务。然后,您可以通过 postgres:5432 和 Docker 执行器以及 localhost:5432 和 Kubernetes 执行器来引用它。

如果服务不适合您的用例,您可能想扩展关于它们在哪里失败的问题,可能会有其他答案。

关于docker - Gitlab CI Runner Docker Executor 公开端口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44215201/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com