1. 拉取镜像:
docker pull gitlab/gitlab-ce
2. 运行容器
docker run --detach \
--hostname gitlab-server \
--publish 20443:443
--publish 20080:80
--publish 20022:22 \
--name gitlab \
--restart always \
--volume /data/gitlab/config:/etc/gitlab \
--volume /data/gitlab/gitlab/logs:/var/log/gitlab \
--volume /data/gitlab/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce:latest
参数:
# 参数描述:
--publish 外部端口:内部端口
--name 容器名字
--restart 重启策略
--volume 外部路径:内部路径
# 重启策略包括:
no,默认策略,在容器退出时不重启容器
on-failure,在容器非正常退出时(退出状态非0),才会重启容器
on-failure:3,在容器非正常退出时重启容器,最多重启3次
always,在容器退出时总是重启容器
unless-stopped,在容器退出时总是重启容器,但是不考虑在Docker守护进程启动时就已经停止了的容器
3. 初始化
根据机器配置有一个等待时间,内部服务启动。可以进入容器查看服务启动状态。
docker exec -it gitlab /bin/bash
正常启动后,可以访问地址 http://localhost:20080
初次会提示设置密码,这个时候的密码,是为默认root设置的。
4. 创建组、项目、用户等。
这里基本上是gitla的图形界面操作,一路点点鼠标即可。
5. 其他问题
1. 如何进入容器?
前面提到:
docker exec -it gitlab /bin/bash
也可以使用容器id进入:
docker exec -it [容器id完整或前几位] /bin/bash
2. 如何设置拉取项目时候的地址:
以下只适用于docker方式,直装的类似但不一样(其实是我没试过)。
(1)进入/var/opt/gitlab/gitlab-rails/etc/gitlab.yml
(2)修改其中的production.gitlab.host/port等配置为自己需要的。
(3)退出,重启gitlab-ctl restart
3.为什么提交了项目会提示commit pending。
因为开启了ci/cd,但是又没有进行配置。这里直接关掉即可。路径:
(使用管理员登录)
- 管理员登录后,点击菜单最右侧的扳手:
- 进入到:管理中心,设置,CI/CD:
3.关闭该钩子即可