一、安装及配置
1.gitlab镜像拉取
# gitlab-ce为稳定版本,后面不填写版本则默认pull最新latest版本
$ docker pull gitlab/gitlab-ce
2.运行gitlab镜像
$ docker run -d -p 10245:443 -p 10246:80 -p 10247:22 --name gitlab --restart always -v /root/myspace/tools/gitlab/config:/etc/gitlab -v /root/myspace/tools/gitlab/logs:/var/log/gitlab -v /root/myspace/tools/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce
# -d:后台运行
# -p:将容器内部端口向外映射
# --name:命名容器名称
# -v:将容器内数据文件夹或者日志、配置等文件夹挂载到宿主机指定目录
运行成功后出现一串字符串
3.配置
按上面的方式,gitlab容器运行没问题,但在gitlab上创建项目的时候,生成项目的URL访问地址是按容器的hostname来生成的,也就是容器的id。作为gitlab服务器,我们需要一个固定的URL访问地址,于是需要配置gitlab.rb(宿主机路径:/home/gitlab/config/gitlab.rb)。
# gitlab.rb文件内容默认全是注释
$ vim /home/gitlab/config/gitlab.rb
# 配置http协议所使用的访问地址,不加端口号默认为80
external_url 'http://124.221.94.200'
# 配置ssh协议所使用的访问地址和端口
gitlab_rails['gitlab_ssh_host'] = '124.221.94.200'
gitlab_rails['gitlab_shell_ssh_port'] = 10247 # 此端口是run时10247端口映射的22端口
:wq #保存配置文件并退出
重启服务
# 重启gitlab容器
$ docker restart gitlab
此时项目的仓库地址就变了。如果ssh端口地址不是默认的22,就会加上ssh:// 协议头
打开浏览器输入ip地址(因为我的gitlab端口为80,所以浏览器url不用输入端口号,如果端口号不是80,则打开为:ip:端口号)
4.浏览器输入http://124.221.94.200:10246/访问即可
帐户名:root
密码:进入容器查看/etc/gitlab/initial_root_password