我在试着拍一张gitlab的码头图像。我已经在使用的港口遇到麻烦了。
错误:因为(a22b149b76f705ec3e00c7ec4f6bcad8f0e1b575aba1dbf621c4edcc4d4e5508):无法启动服务web:驱动程序无法在端点上编程外部连接,gitlab_web_1启动用户代理时出错:侦听TCP0.0.0.0:22:绑定:已在使用的地址
这是我的船坞-复合。Here:
web:
image: 'gitlab/gitlab-ee:latest'
restart: always
hostname: 'gitlab.example.com'
environment:
GITLAB_OMNIBUS_CONFIG: |
external_url 'https://gitlab.example.com'
# Add any other gitlab.rb configuration here, each on its own line
ports:
- '80:80'
- '443:443'
- '22:22'
volumes:
- '$GITLAB_HOME/config:/etc/gitlab'
- '$GITLAB_HOME/logs:/var/log/gitlab'
- '$GITLAB_HOME/data:/var/opt/gitlab'我以前对端口80和443有相同的错误消息。为了解决这个问题,我从服务器上删除了apache。但我需要端口22来连接,所以我不知道怎么弄清楚.
gitlab/gitlab-ee需要端口22?发布于 2020-09-15 14:09:56
一位朋友告诉我关于traefik的事,它将满足我的需求:https://docs.traefik.io/。
另一种解决方案是在apache上创建尽可能多的VirtualHost,并将它们重新路由到本地坞端口。
发布于 2021-08-18 23:29:18
Gitlab需要端口22,因为它是ssh连接的默认端口,用于不同的repos的推/拉。
因为在这个问题中有两种不同的协议,所以它们都有非常不同的解决方案。
SSH端口
为了解决这个问题,我遵循了这里步骤,这说明了如何更新/etc/gitlab/gitlab.rb文件,并将默认侦听端口更改为您选择的内容(示例中为2289)。
注意,当应用更改时,当您克隆回购时,“”字符串将更改为包含此自定义端口。
Apache端口
AFAIK不可能让两个进程监听同一个端口。因此,我为容器发布了不同的端口(即: 8080和8443),并使用带有虚拟主机和代理的Apache使其表现出用户期望的行为方式。这确实假设您可以控制您的DNS。
这允许我拥有多个容器--所有容器都发布不同的端口,而apache监听端口80/442,并充当这些容器的代理。
https://stackoverflow.com/questions/63891797
复制相似问题