Gitlab
安装
Gitlab 分为了 gitlab-ee 和 gitlab-ce 两个版本,经过权衡比较,还是使用 gitlab-ee 版本,因为 gitlab-ee 版本包含了gitlab-ce版本的所有功能,其他功能以后想升级更容易;
1. 拉取镜像
sudo docker pull gitlab/gitlab-ee
2. 配置存放卷的路径
`sudo mkdir -p /srv/docker/gitlab-ee/config /srv/docker/gitlab-ee/logs /srv/docker/gitlab-ee/data
3. 构建容器
多行代码
sudo docker run --detach \
--publish 8443:443 \
--publish 10084:10084 \
--publish 8222:22 \
--name gitlab \
--restart always \
--volume /srv/docker/gitlab-ee/config:/etc/gitlab \
--volume /srv/docker/gitlab-ee/logs:/var/log/gitlab \
--volume /srv/docker/gitlab-ee/data:/var/opt/gitlab \
gitlab/gitlab-ee:latest
单行代码
sudo docker run --detach --publish 8443:443 --publish 10084:10084 --publish 8222:22 --name gitlab --restart always --volume /srv/docker/gitlab-ee/config:/etc/gitlab --volume /srv/docker/gitlab-ee/logs:/var/log/gitlab --volume /srv/docker/gitlab-ee/data:/var/opt/gitlab gitlab/gitlab-ee:latest
***NOTE:***构建完成后需要修改config
下面的gitlab.rb
文件
4. 修改配置文件
在gitlab.rb
文件中新增
external_url 'http://192.168.0.86:10084' # 换成自己的
gitlab_rails['gitlab_shell_ssh_port'] = 8222 # 换成自己的
修改完文件后,重新配置容器
sudo docker exec -it gitlab gitlab-ctl reconfigure
重启容器
sudo docker restart gitlab
docker 进入gitlab修改密码
一般情况下,不用修改密码,在config
文件夹下有一个文件叫initial_root_password
, 里面存放了最初始的密码,24小时内有效,请登录后及时修改到方便记忆的密码;
- 进入gitlab容器内
docker exec -uroot -it gitlab /bin/bash
- 一次执行下面的命令:
gitlab-rails console -e production
user = User.where(id: 1).first
user.password = ‘password’ # 换成自己的
user.password_confirmation = ‘password’ # 换成自己的
user.save!
exit
邮箱配置
主要用于gitlab 日常使用中邮件通知服务
1.修改配置文件,建议使用企业邮箱
修改文件 gitlab.rb
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.qiye.aliyun.com" # 换成自己的
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "gitlab@example.com" # 换成自己的域名
gitlab_rails['smtp_password'] = "gitlab_pw" # 换成自己的密码
gitlab_rails['smtp_domain'] = "smtp.qiye.aliyun.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
# gitlab_rails['smtp_pool'] = false
gitlab_rails['gitlab_email_from'] = 'send_from' # 换成自己的
测试
开启 gitlab 的 bash 工具
$ docker exec -it gitlab bash
开启 gitlab-rails 工具
$ gitlab-rails console production
发送邮件进行测试
Notify.test_email('test@xxx.com', 'Message Subject', 'Message Body').deliver_now
重新配置与重启
sudo docker exec -it gitlab gitlab-ctl reconfigure
sudo docker restart gitlab
【参考】
- https://www.cnblogs.com/lijinchang/p/12695372.html
- https://blog.csdn.net/cxy_LG/article/details/102967804
- https://zhuanlan.zhihu.com/p/342136826
- https://blog.csdn.net/ming19951224/article/details/105479033
- https://bbs.csdn.net/topics/397131190
- https://blog.csdn.net/sasibingdu/article/details/120076226
- 配置邮箱
- docker下gitlab安装与配置