Docker安装Gitlab
初步安装
docker命令
# 安装
docker run -d -p 8443:443 -p 80:80 -p 8022:22 --restart always --name gitlab \
-v /data/docker/gitlab/etc:/etc/gitlab \
-v /data/docker/gitlab/log:/var/log/gitlab \
-v /data/docker/gitlab/data:/var/opt/gitlab \
--privileged=true gitlab/gitlab-ce
# 进入容器内部
docker exec -it gitlab /bin/bash
# 进入控制台
gitlab-rails console -e production
# 查询id为1的用户,id为1的用户是超级管理员
user = User.where(id:1).first
# 修改密码为Test10101
user.password='Test10101'
# 保存
user.save!
# 退出
exit
# 容器内重启git
gitlab-ctl reconfigure
# 外部重启git
docker restart gitlab
IP和域名端口等配置更新
- /etc/gitlab/gitlab.rb
# 编辑配置
vi /etc/gitlab/gitlab.rb
# 以下配置不可以加端口,加了就无法访问
external_url 'http://127.0.0.1'
# 修改ssh的端口-宿主机的端口
gitlab_rails['gitlab_shell_ssh_port'] = 8022
#ssh主机ip
gitlab_rails['gitlab_ssh_host'] = '127.0.0.1'
# 让配置生效
gitlab-ctl reconfigure
- 疑似是可以在上面加端口后进行访问的办法
# 修改http和ssh配置
vi /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml
gitlab:
host: 127.0.0.1
port: 9980 # 这里改为9980
https: false
配置
邮件配置
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.qq.com"
gitlab_rails['smtp_port'] = 587
gitlab_rails['smtp_user_name'] = "XXXXXX@qq.com"
gitlab_rails['smtp_password'] = "邮箱码"
gitlab_rails['smtp_domain'] = "smtp.qq.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = false
gitlab_rails['smtp_pool'] = false
gitlab_rails['smtp_openssl_verify_mode'] = 'none' # 此处去掉注释,默认none即可
- 然后再搜索gitlab_email_from,找到如下位置,设置发件人信息,然后保存退出
### Email Settings
gitlab_rails['gitlab_email_enabled'] = true
gitlab_rails['gitlab_email_from'] = 'XXXXXX@qq.com' ## 发件邮箱
gitlab_rails['gitlab_email_display_name'] = 'git server' ## 显示名字
CICD 额外邮件推送
- 管理员->设置->集成->流水线状态电子邮件
处理gitlab磁盘IO 100%!
进入配置文件gitlab.rb中进行修改
unicorn['worker_timeout'] = 60
unicorn['worker_processes'] = 2
unicorn['worker_memory_limit_min'] = "100 * 1 << 20"
unicorn['worker_memory_limit_max'] = "250 * 1 << 20"
sidekiq['concurrency'] = 8
postgresql['shared_buffers'] = "128MB"
postgresql['max_worker_processes'] = 4
prometheus['enable'] = false
重启gitlab
进入容器并将数据备份
//进入容器
docker exec -it gitlab /bin/bash
//进入目录
cd /var/opt/gitlab/backups
// 生成数据备份文件,生成的文件是.tar文件,类似1598965868_2024_10_29_13.3.2_gitlab_backup.tar
gitlab-rake gitlab:backup:create
// 上面的备份命令并不会把配置额文件一起备份,需要我们手动的将配置文件给保存下来
// 进入/etc/gitlab,找到以下文件
gitlab.rb
gitlab-secrets.json
// 其实可以退出到宿主机,然后找到其映射文件目录里面再继续找到这两个文件,并将其进行备份,也可以使用docker cp命令将需要备份的文件给保存起来
//数据备份完成后要不要把当前容器给停止了,就看你的选择了
CI/CD
- 所在电脑必须安装git和Runner
查看项目project id
方法一:直接get请求
查询指定项目:https://gitlab.com/api/v4/projects?private_token=xxxx&search=projectname
查询完整列表:https://gitlab.com/api/v4/projects?per_page=500&private_token=xxxx
private_token来源:个人账号-Profile Settings-account,页面最上方就是private token。
方法二(最快捷):
进入目标项目页面-显示网页源代码,直接搜索:project_id。
安装 GitLab Runner
注册
gitlab-runner.exe register --url http://192.168.0.189:8090 --token glrt-t3_yW1QqVQKXhd79X5wB9qY
直接启动
gitlab-runner.exe run
注册为服务
gitlab-runner.exe install
gitlab-runner.exe start
版权声明:
作者:亦灵一梦
链接:https://blog.haokaikai.cn/2024/weihu/linux/1205.html
来源:开心博客
文章版权归作者所有,未经允许请勿转载。
THE END
0
二维码
海报
Docker安装Gitlab
初步安装
docker命令
# 安装
docker run -d -p 8443:443 -p 80:80 -p 8022:22 --restart always --name gitlab \
-v /data/docker/gitlab/etc:/etc/gitlab \
-……
文章目录
关闭