前端时间公司IDC机房崩溃,gitlab私库丢失,所幸代码存在相关备份。
于是,在时隔N年后,再次开始搭建gitlabce omnibus docker版本私库。
简记如下:
安装版本为:
docker pull gitlab/gitlab-ce
启动docker-compose描述文件为:
version: "3" services: gitlabce: image: gitlab/gitlab-ce restart: always environment: TZ: Asia/Shanghai ports: - "12345:22" - "12346:80" - "12347:443" volumes: - ./gitlab/etc:/etc/gitlab - ./gitlab/logs:/var/log/gitlab - ./gitlab/data:/var/opt/gitlab
gitlab配置文件中,设置http访问地址(根据最终浏览器访问地址而定):
external_url 'http://****:12346'
nginx['listen_port'] = 80
注意:如果此时误配和https,则容易造成浏览器无法访问。此时需要使用将配置还原后访问一次,然后重新配置。
gitlab配置文件中,设置SSH端口为:
gitlab_rails['gitlab_shell_ssh_port'] = 12345
gitlab配置文件中,设置https端口为:
external_url 'https://*****:12347' nginx['enable'] = true nginx['client_max_body_size'] = '500m' nginx['listen_port'] = 80 nginx['listen_https'] = false nginx['proxy_set_headers'] = { "Host" => "$http_host", "X-Real-IP" => "$remote_addr", "X-Forwarded-For" => "$proxy_add_x_forwarded_for", "X-Forwarded-Proto" => "https", "X-Forwarded-Ssl" => "on", "Upgrade" => "$http_upgrade", "Connection" => "$connection_upgrade" }
gitlab配置文件中,设置smtp为:
gitlab_rails['smtp_enable'] = true gitlab_rails['smtp_address'] = "smtp.263.net" gitlab_rails['smtp_port'] = 465 gitlab_rails['smtp_user_name'] = "****" gitlab_rails['smtp_password'] = "*****" gitlab_rails['smtp_domain'] = "263.net" gitlab_rails['smtp_authentication'] = "login" gitlab_rails['smtp_enable_starttls_auto'] = true gitlab_rails['smtp_tls'] = true gitlab_rails['gitlab_email_enabled'] = true gitlab_rails['gitlab_email_from'] = '*****' gitlab_rails['gitlab_email_display_name'] = '********' gitlab_rails['gitlab_email_reply_to'] = '********'
测试是否配置成功:
gitlab-ctl reconfigure gitlab-rails console #进入控制台,然后发送邮件 Notify.test_email('*****@***.com', '邮件标题', '邮件正文').deliver_now
至此,gitlab基本配置完毕。
-----------------------
张作桃