一、docker查找gitlab中文版镜像
docker search [options] 镜像名
[root@localhost ~]# docker search gitlab
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
gitlab/gitlab-ce GitLab Community Edition docker image based … 2686 [OK]
sameersbn/gitlab Dockerized gitlab web server 1136 [OK]
gitlab/gitlab-runner GitLab CI Multi Runner used to fetch and run… 567 [OK]
twang2218/gitlab-ce-zh 汉化的 GitLab 社区版 Docker Image 203
二、选择twang2218/gitlab-ce-zh汉化版镜像拉取
docker pull [options] 镜像名[:tags]
[root@localhost ~]# docker pull twang2218/gitlab-ce-zh
Using default tag: latest
latest: Pulling from twang2218/gitlab-ce-zh
8ee29e426c26: Pull complete
6e83b260b73b: Pull complete
e26b65fd1143: Pull complete
40dca07f8222: Pull complete
...
三、运行镜像
docker run -d -p 465:465 -p 8443:443 -p 19280:19280 -p 19222:22 --privileged=true --name gitlab --restart always
-v /root/data/gitlab/config:/etc/gitlab
-v /root/data/gitlab/logs:/var/log/gitlab
-v /root/data/gitlab/data:/var/opt/gitlab
twang2218/gitlab-ce-zh
参数注解:
-d 容器后台运行
-p 端口映射
--privileged=true 挂载数据卷时,对应的宿主机目录可能没有权限,导致配置文件无法加载,gitlab处于一直重启的状态
--name 指定容器名字
--restart 容器退出后重启容器
-v 挂载数据卷
四、修改配置文件
进入容器 docker exec -it gitlab /bin/bash
修改配置文件 vi /etc/gitlab/gitlab.rb
-
配置主机地址和ssh
-
我们在端口映射时,将主机端口19280映射到容器内端口19280,nginx默认是监听80端口,所以要设置nginx监听端口为19280
-
邮件配置
密码为开启QQ邮箱pop3/smtp服务时的授权码
注意:修改文件时,找对修改的位置。一开始没有找对修改的位置导致出现各种问题。
五、配置完成以后需要做什么
重新加载配置
gitlab-ctl reconfigure
重启gitlab
gitlab-ctl restart
退出容器
exit
查看容器是否运行
docker ps
[root@localhost data]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
90d3b2905c4b twang2218/gitlab-ce-zh "/assets/wrapper" About an hour ago Up About an hour (healthy) 0.0.0.0:465->465/tcp, 80/tcp, 0.0.0.0:19280->19280/tcp, 0.0.0.0:19222->22/tcp, 0.0.0.0:8443->443/tcp gitlab
六、完工
浏览器输入 http://192.168.78.128:19280
登录后创建新的项目