docker下gitlab安装配置使用
GitLab是一个基于Git实现的在线代码仓库软件,你可以用GitLab自己搭建一个类似于GitHub一样的仓库,但是GitLab有完善的管理界面和权限控制,一般用于在企业、学校等内部网络搭建Git私服。 GitLab让开发团队对他们的代码仓库拥有更多的控制,相比于GitHub,它有不少的特色: 允许免费设置仓库权限;允许用户选择分享一个project的部分代码;允许用户设置project的获取权限,进一步的提升安全性;可以设置获取到团队整体的改进进度;通过innersourcing让不在权限范围内的人访问不到该资源。 从代码私有性方面来看,有时公司并不希望员工获取到全部的代码,这个时候GitLab无疑是更好的选择。但对于开源项目而言,GitHub依然是代码托管的首选。
一、安装及配置
gitlab 镜像分为两个版本: gitlab-ce 社区版 gitlab-ee 企业收费版
这里使用社区版则可,直接安装官方镜像,目前(2020/1/14)官方镜像大小约1.8G,如果你没有设置Docker镜像源,Docker会默认从国外Docker官方Hub去拉去进行,速度难以让人接受,参考「Centos7安装docker-ce」一文进行设置。
1.gitlab镜像拉取
# gitlab-ce为稳定版本,后面不填写版本则默认pull最新latest版本$ docker pull gitlab/gitlab-ce2.将gitlab镜像制作成容器并运行容器
$ docker run -d -p 443:443 -p 80:80 -p 222:22 --name gitlab --restart always -v /home/gitlab/config:/etc/gitlab -v /home/gitlab/logs:/var/log/gitlab -v /home/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce# -d:后台运行# -p:将容器内部端口向外映射# --name:命名容器名称# -v:将容器内数据文件夹或者日志、配置等文件夹挂载到宿主机指定目录运行成功后出现一串字符串:
查看容器:
docker ps -a运行容器:
docker start gitlab3.配置gitlab
按上面的方式,gitlab容器运行没问题,但在gitlab上创建项目的时候,生成项目的URL访问地址是按容器的hostname来生成的,也就是容器的id。作为gitlab服务器,我们需要一个固定的URL访问地址,于是需要配置gitlab.rb(宿主机路径:/home/gitlab/config/gitlab.rb)。
# gitlab.rb文件内容默认全是注释$ vim /home/gitlab/config/gitlab.rb修改配置:
# 配置http协议所使用的访问地址,不加端口号默认为80external_url 'http://192.168.8.144'# 配置ssh协议所使用的访问地址和端口gitlab_rails['gitlab_ssh_host'] = '192.168.8.144'# 此端口是run时22端口映射的222端口gitlab_rails['gitlab_shell_ssh_port'] = 222:wq #保存配置文件并退出重启gitlab容器:
$ docker restart gitlab此时项目的仓库地址就变了。如果ssh端口地址不是默认的22,就会加上ssh:// 协议头
打开浏览器输入ip地址(因为我的gitlab端口为80,所以浏览器url不用输入端口号,如果端口号不是80,则打开为:ip:端口号)
首次登陆用户名是root,运行一下代码查看root的默认密码:
docker exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_password登陆成功!
可以修改一下密码:
4.创建一个项目:
下面我们就可以新建一个项目了,点击Create a project
创建完成后:
创建完成!
4.面板简单的使用
创建ssh
新建用户:
管理员账号登陆