gitlab部署
Gitlab 服务的安装文档:https://about.gitlab.com/install/
安装环境要求:https://docs.gitlab.com/ce/install/requirements.html
下载地址:
- 安装包下载地址:https://packages.gitlab.com/gitlab/gitlab-ce
- rpm包国内下载地址:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/
- ubuntu国内下载地址:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu/pool/
web界面登录:
- url: http://localhost
- 账号: root
- 密码: 初次登录时设置的密码
配置外部服务
使用非内置的数据库时,可参考官方文档修改,nginx配置有点麻烦,不建议改
- pgsql:https://archives.docs.gitlab.com/16.3/omnibus/settings/database.html#using-a-non-packaged-postgresql-database-management-server
- redis:https://archives.docs.gitlab.com/16.3/omnibus/settings/redis.html
安装
yum方式
yum install -y https://d20rj4el6vkp4c.cloudfront.net/7/8/el/8/package_files/47958.rpm?t=1639926940_a1697b48cbf70100bed7dad137efed826daac64b
vim /etc/gitlab/gitlab.rb
#配置邮箱
external_url 'http://2.2.2.25'
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.163.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "xx@163.com"
gitlab_rails['smtp_password'] = "密码"
gitlab_rails['smtp_domain'] = "163.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
gitlab_rails['gitlab_email_from'] = "xx@163.com"
user["git_user_email"] = "xx@163.com"
#在控制台发送邮件,测试是否成功
gitlab-rails c
Notify.test_email('xx@qq.com', '邮件标题', '邮件正文').deliver_now
docker安装:
初始化数据很大,很慢很慢,需要等待2分钟左右
docker run -d \
-h gitlab.deploy.com \
-e GITLAB_OMNIBUS_CONFIG="external_url 'http://gitlab.deploy.com/';" \
-p 4430:443 \
-p 880:80 \
-p 220:22 \
-p 8060:8060 \
--name gitlab \
--restart always \
-v /data/gitlab/config:/etc/gitlab \
-v /data/gitlab/logs:/var/log/gitlab \
-v /data/gitlab/data:/var/opt/gitlab \
--shm-size 256m \
registry.gitlab.cn/omnibus/gitlab-jh:14.9.0
#查看密码,密码24小时有效
docker exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_password
#修改gitlab监听域名
sed -ri "s@# (external_url).*@\1 'http://gitlab.deploy.com'@" /data/gitlab/config/gitlab.rb
docker restart gitlab
sed -ri -e 's#(.*server_name).*#\1 gitlab.deploy.com;#' \
-e 's#(.*allow).*#\1 10.10.107.0/24;#' \
-e '/allow/a \ allow 172.17.0.0/16;' \
/data/gitlab/data/nginx/conf/nginx-status.conf
docker exec -it gitlab gitlab-ctl restart nginx