Mac docker搭建gitlab

711 阅读1分钟

拉取gitlab最新镜像

docker pull gitlab/gitlab-ce:latest

docker images查看下载的镜像 image.png

运行命令

docker run -d  
-p 8080:80 
-p 8022:22 
--name gitlab 
--restart always 
-v /Users/xuhao/Documents/docker/gitlab/config:/etc/gitlab 
-v /Users/xuhao/Documents/docker/gitlab/logs:/var/log/gitlab 
-v /Users/xuhao/Documents/docker/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce
命令解释:
-d 后台运行容器,并返回容器ID
-p 8080:80  将容器内80端口映射至宿主机8080端口,这是访问gitlab的端口
-p 8022:22  将容器内22端口映射至宿主机9922端口,这是访问ssh的端口
-v 是将容器的目录挂在到宿主的目录,如果宿主没有该路径,会自动创建
gitlab/gitlab-ce  镜像的名称

image.png

修改gitlab.rb配置

增加如下配置

external_url 'http://192.168.0.103'
gitlab_rails['gitlab_ssh_host'] = '192.168.0.103'
gitlab_rails['gitlab_shell_ssh_port'] = 8022

image.png

重启容器

xuhao@xuhaodeMacBook-Pro ~ % docker restart 4f5aa80d5f6bc01a53c50952d5e28b26d5ae8c3d33a67aecec56cf6718fbb365

访问页面

稍等一会访问http://192.168.0.103:8080/

image.png

修改root用户密码

进入gitlab容器中

#查看正在运行的docker容器
docker ps
#进入gitlab容器,4f5aa80d5f6b是CONTAINER ID。容器ID
docker exec -it 4f5aa80d5f6b bash

image.png

进入gitlab控制台

gitlab-rails console -e production
#返回root用户
user = User.where(id: 1).first
user.password = '密码,大于8位,不能过于简单'
user.password_confirmation = '密码'
#执行保存
user.save!

image.png

输入用户名密码登录

image.png