使用Docker为CI和运行程序安装Gitlab CI,并在重新启动后使其持久化
我有一台运行Gitlab的服务器。假设地址是使用Docker为CI和运行程序安装Gitlab CI,并在重新启动后使其持久化,docker,gitlab,gitlab-ci,Docker,Gitlab,Gitlab Ci,我有一台运行Gitlab的服务器。假设地址是https://gitlab.mydomain.com 现在我想实现的是安装一个持续集成系统。因为我使用的是Gitlab,所以我选择了Gitlab CI,因为它感觉更自然。所以我去了Docker repo找到了 因此,我运行该图像来创建一个包含以下内容的容器 docker run --restart=always -d -p 9000:9000 -e GITLAB_URLS="https://gitlab.mydomain.com" anapsix/g
https://gitlab.mydomain.com
现在我想实现的是安装一个持续集成系统。因为我使用的是Gitlab,所以我选择了Gitlab CI,因为它感觉更自然。所以我去了Docker repo找到了
因此,我运行该图像来创建一个包含以下内容的容器
docker run --restart=always -d -p 9000:9000 -e GITLAB_URLS="https://gitlab.mydomain.com" anapsix/gitlab-ci
我给它一分钟时间启动,现在我可以通过URLhttp://gitlab.mydomain.com:9000
。到目前为止还不错
我登录CI,收到以下消息:
Now you need Runners to process your builds.
所以我回到码头中心,我发现了。显然,要启动这个图像,我必须以交互方式进行。我按照说明操作,它将创建配置文件:
mkdir -p /opt/gitlab-ci-runner
docker run --name gitlab-ci-runner -it --rm -v /opt/gitlab-ci-runner:/home/gitlab_ci_runner/data sameersbn/gitlab-ci-runner:5.0.0-1 app:setup
交互式设置将要求我提供所需的正确数据:
Please enter the gitlab-ci coordinator URL (e.g. http://gitlab-ci.org:3000/ )
http://gitlab.mydomain.com:9000/
Please enter the gitlab-ci token for this runner:
12345678901234567890
Registering runner with registration token: 12345678901234567890, url: http://gitlab.mydomain.com:9000/.
Runner token: aaaaaabbbbbbcccccccdddddd
Runner registered successfully. Feel free to start it!
我去http://gitlab.mydomain:9000/admin/runners
,万岁,跑步者出现在舞台上
一切似乎都很好,但问题来了:
如果由于更新或其他原因重新启动机器,运行程序将不再存在。当我运行运行程序的映像时,我可能会将--restart=always
添加到命令中,但这会有问题,因为:
我怎样才能解决这个问题呢?我有办法给你指出正确的方向,但我自己也在努力,希望我们都能解决这个问题。这是我的情况 我正在使用coreOS+docker来做你想做的事情,在coreOS中,你可以设置一个服务,每当你重新启动机器(以及gitlab和其他)时,它就会启动CI。我的问题是,要让同样的安装自动进行 经过一番挖掘,我发现: 在本文档中,他们声明可以通过两种方式完成:
- 1-将包含凭据的.dockercfg文件装入/root 目录
- 2-使用以下信息启动容器:
- -e CI_服务器\u URL=\
- -电子注册令牌=123456789001234567890\