GitLab CE 是目前比较主流的企业级代码托管平台,一般在项目上都会使用它来实现代码托管、CI/CD等功能。这里就介绍一下如何使用 Docker 来部署 GitLab CE。
首先给出 GitLab 的官方文档:https://docs.gitlab.com/omnibus/docker/README.html,可以根据 GitLab CE 镜像的版本来选择不同版本的文档。
一、拉取镜像
GitLab CE 的 Docker 镜像可以在这里找到:https://registry.hub.docker.com/r/gitlab/gitlab-ce/
它有好多个标签,这里我使用的是目前最新的稳定版:"13.6.3-ce.0"
,也就是"latest"
使用如下命令来拉取该镜像:
docker pull gitlab/gitlab-ce:latest
GitLab CE 的镜像特别大,差不多900M,所以最好使用镜像加速服务,否则 Docker 官方镜像地址的境内网络速度会让你怀疑人生的。
二、新建持久化目录
使用 Docker 来部署时最好将一些重要的目录映射到本地磁盘中方便持久化,在 GitLab 的文档中也是建议新建一个专供 GitLab 容器持久化存储的目录。这里呢,我会在用户目录下新建一个 GitLab 的独立目录:
mkdir -p /root/docker/gitlab
然后将该目录声明为一个环境变量,标识该目录为 GitLab 容器的主目录,方便后期的命令执行:
export GITLAB_HOME=/root/docker/gitlab
接着我会在该目录下接着新建一些目录:
mkdir $GITLAB_HOME/data
mkdir $GITLAB_HOME/logs
mkdir $GITLAB_HOME/config
第一行是新建了一个 GitLab 数据存储目录,第二行是日志存储目录,第三行是配置存储目录。
三、运行容器
接下来就是使用 docker run
命令来运行一个 GitLab
CE 容器:
docker run --detach \
--hostname gitlab.example.com \
--publish 9443:443 --publish 9080:80 --publish 9022:22 \
--name gitlab \
--restart always \
--volume $GITLAB_HOME/config:/etc/gitlab \
--volume $GITLAB_HOME/logs:/var/log/gitlab \
--volume $GITLAB_HOME/data:/var/opt/gitlab \
gitlab/gitlab-ce:latest
第一行表示将该容器放置在后台运行。
第二行表示给容器设置一个主机名。
第三行表示将本地的9443
、9080
和9022
端口分别映射到容器中的443
、80
和22
端口。本地的端口可以根据自己的需要来更改。
第四行表示给这个容器起一个名字,后面可以通过该名字来控制这个容器。
第五行表示该容器会开机自起。
第六行表示将本地的 "$GITLAB_HOME/config"
目录映射为容器中的"/etc/gitlab"
目录。
第七行表示将本地的 "$GITLAB_HOME/logs"
目录映射为容器中的"/var/log/gitlab"
目录。
第八行表示将本地的 "$GITLAB_HOME/
目录映射为容器中的data
""/var/opt/gitlab"
目录。
第九行则是指定使用哪一个镜像和标签。
运行该命令后会返回一个容器ID,我们可以使用该容器的名字或者ID来控制这个容器:
# 启动
docker start gitlab
# 停止
docker stop gitlab
# 重启
docker restart gitlab
# 开机自起
docker enable gitlab
# 取消开机自起
docker disbale gitlab
启动了之后呢就可以通过映射出来的本地9080
端口来访问 GitLab,一开始会让你设置一下管理员用户的密码,设置了之后就可以使用root
用户名和刚才设置的密码来登陆GitLab。
四、视频教程
针对本次教程我也录制了视频教程,如有需要可以使用微信扫一扫文章下方左边的二维码或者搜索"sunriseydy"关注本站的微信公众号然后回复"docker_install_gitlab-ce"
即可获取视频观看链接。
本作品由 sunriseydy 采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。
文章内容如未说明均为原创,欢迎转载,但请注明原作者(sunriseydy)和原文链接(https://blog.sunriseydy.top/technology/linux/docker_install_gitlab-ce/)
部分来自互联网的文章,如有侵权,请联系我,24小时内删除,谢谢
感谢您的支持,SunriseYDY 会继续努力的!



打开支付宝扫一扫,即可进行扫码打赏哦
日出一点一 | 在探索的路上永不止步