使用docker搭建gitlab ci环境
安装gitlab
1、拉去gitlab镜像
docker pull gitlab/gitlab-ce:latest
2、生成gitlab容器
docker run --detach \
--hostname localhost \
--publish 443:443 --publish 80:80 --publish 222:22 \
--name gitlab \
--restart always \
--volume /Users/codeyu/workspace/gitlab-ci/gitlab/config:/etc/gitlab \
--volume /Users/codeyu/workspace/gitlab-ci/gitlab/logs:/var/log/gitlab \
--volume /Users/codeyu/workspace/gitlab-ci/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce:latest
一般比较慢,可以使用docker logs -f gitlab
查看实时执行情况。ok后的状态如下:
╭─codeyu@192 ~
╰─$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
7ba9cb0f881a gitlab/gitlab-ce:latest "/assets/wrapper" 4 minutes ago Up 4 minutes (healthy) 0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp, 0.0.0.0:222->22/tcp gitlab
然后在浏览器访问:localhost:80
就可以看到gitlab页面了。
初次登陆的root密码在gitlab/config/initial_root_password 文件中
中文配置:
安装gitlab-runner
1、拉去gitlab-runner镜像
docker pull gitlab/gitlab-runner:latest
2、启动容器
sudo docker run -d --name gitlab-runner --restart always \
-v /Users/codeyu/workspace/gitlab-ci/gitlab-runner/config:/etc/gitlab-runner \
-v /var/run/docker.sock:/var/run/docker.sock \
gitlab/gitlab-runner:latest
映射/var/run/docker.sock
这个文件是为了让容器可以通过/var/run/docker.sock
与Docker
守护进程通信,管理其他Docker
容器 -v /Users/codeyu/workspace/gitlab-ci/gitlab-runner/config:/etc/gitlab-runner
是将runner的配置文件映射到宿主机/Users/codeyu/workspace/gitlab-ci/gitlab-runner/config
方便调整和查看配置
注册gitlab-runner
docker run --rm -v /srv/gitlab-runner/config:/etc/gitlab-runner gitlab/gitlab-runner register \
--non-interactive \
--executor "docker" \
--docker-image alpine:latest \
--url "http://ip:port" \
--registration-token "自己gitlab上的token" \
--description "first-register-runner" \
--tag-list "test1-ci" \
--run-untagged="true" \
--locked="false" \
--access-level="not_protected"
这样就注册好了,在gitlab上也能看到这个runner了。
© 版权声明
文章版权归作者所有,未经允许请勿转载,侵权请联系 admin@trc20.tw 删除。
THE END