1、拉取gitlab社区版本镜像
(1)拉取13.10.2版本
docker pull gitlab/gitlab-ce:13.10.2-ce.0
(2)拉取最新版的
docker pull gitlab/gitlab-ce:latest
注意:下面安装以13.10.2版本为例
2、创建挂载目录
mkdir -p /usr/local/gitlab/etc
mkdir -p /usr/local/gitlab/log
mkdir -p /usr/local/gitlab/data
3、启动GitLab服务
(1)查看镜像
docker images
(2)启动 GitLab服务
docker run -d -p 8443:443 -p 8090:80 -p 8022:22 --restart always --name gitlab -v /usr/local/gitlab/etc:/etc/gitlab -v /usr/local/gitlab/log:/var/log/gitlab -v /usr/local/gitlab/data:/var/opt/gitlab --privileged=true gitlab/gitlab-ce:13.10.2-ce.0
命令解释如下:
docker run
-d #后台运行,全称:detach
-p 8443:443 #将容器内部端口向外映射
-p 8090:80 #将容器内80端口映射至宿主机8090端口,这是访问gitlab的端口
-p 8022:22 #将容器内22端口映射至宿主机8022端口,这是访问ssh的端口
--restart always #容器自启动
--name gitlab #设置容器名称为gitlab
-v /usr/local/gitlab/etc:/etc/gitlab #将容器/etc/gitlab目录挂载到宿主机/usr/local/gitlab/etc目录下,若宿主机内此目录不存在将会自动创建
-v /usr/local/gitlab/log:/var/log/gitlab #与上面一样
-v /usr/local/gitlab/data:/var/opt/gitlab #与上面一样
--privileged=true #让容器获取宿主机root权限
gitlab/gitlab-ce:13.10.2-ce.0 #镜像的名称,这里也可以写镜像ID
(3)查看GitLab是否启动
docker ps
4、 配置GitLab
(1)进入容器
docker exec -it gitlab bash
(2)修改gitlab.rb文件
//先进入到gitlab目录
cd /etc/gitlab
//编辑gitlab.rb文件
vim gitlab.rb
(3)修改gitlab.rb文件中的IP与端口号
// 在gitlab创建项目时候http地址的host(不用添加端口)
external_url 'http://xx.xx.xx.xx'
(4)配置gitlab.yml文件
先进入到config目录下
cd /opt/gitlab/embedded/service/gitlab-rails/config
打开编辑gitlab.yml文件
vim gitlab.yml
修改host 与上面.rb文件修改的一致,修改port 为8090
5、重启GitLab服务(修改完配置要重启服务)
(1)容器内重启命令
gitlab-ctl restart
(2)退出容器
exit
(3) 常用命令
// 这里的gitlab 就是我们上一步docker run 当中使用--name 配置的名字
//容器外停止
docker stop gitlab
//容器外重启
docker restart gitlab
//进入容器命令行
docker exec -it gitlab bash
//容器中应用配置,让修改后的配置生效
gitlab-ctl reconfigure
6、访问GitLab
(1)使用浏览器打开GitLab
**注意:**第一次访问默认是root账户,会需要修改密码(密码至少8位数)设置好之后确定就行
访问链接如下:
http://XXX.XX.XX.XX:8090/