我有一台服务器,运行多个Docker容器,其中有两个,对于我的主要网站,另外两个是共享的MariaDB和Redis,其中一个是Traefik,另一个是Portainer(我仍然遇到Docker问题cli)。
因此出现了一个问题,如何在Docker中运行Gitlab并通过Traefik代理它?
我确实需要22个端口用于从主机到服务器的SSH连接,端口80和443由Traefik占用(以处理代理和https),因此Gitlab所需的所有3个端口均由代理+系统。
使用Traefik是反向代理来创建Dockerized Gitlab实例的正确方法是什么?
另一个问题是,运行程序(对于CI / CD)如何在Dockerized实例上工作? (Xzibit方式?“我已经为您创建了Docker实例,以便您可以在Docker内运行Docker,而Docker也可以运行Docker?”)
答案 0 :(得分:0)
下面是Traefik背后的GitLab示例,包括用户界面和注册表:https://discourse.geek-kitchen.funkypenguin.co.nz/t/a-complete-gitlab-traefik-config/554/11
关于SSH的处理方式,您可以重新编号现有的SSH守护程序以使用22以外的端口,或者仅使用其他端口(即2222),然后告诉GitLab您使用了非SSH端口。通过设置GITLAB_SSH_PORT
env变量来建立标准的SSH端口。
以下是将跑步者作为容器运行的示例:https://geek-cookbook.funkypenguin.co.nz/recipes/gitlab-runner/