1. 程式人生 > >三十分鐘完成 Gitlab 搭建安裝指南(支援 HTTPS 訪問)

三十分鐘完成 Gitlab 搭建安裝指南(支援 HTTPS 訪問)

背景

由於我們早期使用 phabricator 進行程式碼管理,但是在使用的過程當中發現和社群的 github 使用方式有些不同,所以為了讓大夥都習慣 github 社群相同的使用風格,所以我們換成了 gitlab 作為公司內部的程式碼管理系統;並且其強大的 CI/CD 的方式為後續的持續整合工作打下基礎。

注意

Gitlab 分為 社群版 (gitlab-ce) 與 企業版 (gitlab-ee),社群版免費,企業版收費,兩個版本的區別參考官方文件:gitlab-ce VS gitlab-ee;官方網站安裝文件預設是針對 gitlab-ee 進行說明的,為了避免不必要的麻煩請直接安裝 gitlab-ce

版本。

新版本方式 : 此文件針對大於 Gitlab 10.5 版本進行說明的,小於此版本的參考其它文件。

開始安裝

由於官方的方式下載軟體包太慢,並且我們是專門購買的一臺機器安裝 gitlab 使用,再加上本人覺得直接下載軟體包 *.deb 手動安裝方便一些,所以我直接在清華大學開源軟體源下載的包進行安裝的。

注意:我這裡的作業系統版本是 Ubuntu 16.04 ,最後的那位部落格使用的是 Centos 方式安裝的,最好對照自己的作業系統方式進行部落格參考。

下載安裝

以下通過手動方式安裝的,如果希望通過新增軟體源的方式新增方便後續的自動更新,可以參考:

清華大學開源文件如何新增 gitlab-ce 軟體源

下載包檔案

wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu/pool/xenial/main/g/gitlab-ce/gitlab-ce_10.7.2-ce.0_amd64.deb

開始安裝

dpkg -i gitlab-ce_10.7.2-ce.0_amd64.deb

基礎配置

開啟 /etc/gitlab/gitlab.rb 檔案進行基礎設定,所有的核心設定均在這個檔案中。

設定外部地址

## GitLab URL
##! URL on which GitLab will be reachable.
##! For more details on configuring external_url see: ##! https://docs.gitlab.com/omnibus/settings/configuration.html#configuring-the-external-url-for-gitlab external_url 'https://gitlab.xxx.com'

注意:如果沒有設定以下 https 方式,則需要把地址前面換成 http

設定 HTTPS 方式

如果想要以上的 https 方式正常生效使用,則需要把 letsencrypt 自動生成證書的配置開啟,這樣在執行重新讓配置生效命令 (gitlab-ctl reconfigure) 的時候會自動給域名生成免費的證書並自動在 gitlab 自帶的 nginx 中加上相關的跳轉配置,都是全自動的,非常方便。

注意:進行生成證書的時候請預先把域名解析設定完畢,否則會執行配置生效命令失敗。

################################################################################
# Let's Encrypt integration
################################################################################
 letsencrypt['enable'] = true
 letsencrypt['contact_emails'] = ['[email protected]'] # This should be an array of email addresses to add as contacts

郵件配置

很多部落格及大多數的情況都推薦使用 postfix 模組進行郵件通知處理;但是我們公司已有郵箱伺服器,所以 postfix 並非必須的;所以我這裡採用 SMTP 的方式配置郵件伺服器來實現通知效果;具體配置參考如下:


開啟 /etc/gitlab/gitlab.rb 配置 SMTP 服務的具體內容如下,我這裡採用的郵箱安全埠,點選開啟更多配置參考

### Email Settings
 gitlab_rails['gitlab_email_enabled'] = true
 gitlab_rails['gitlab_email_from'] = '[email protected]'
 gitlab_rails['gitlab_email_display_name'] = 'gitlab.notice'
 gitlab_rails['gitlab_email_reply_to'] = '[email protected]'
 gitlab_rails['gitlab_email_subject_suffix'] = 'gitlab'

### GitLab email server settings
###! Docs: https://docs.gitlab.com/omnibus/settings/smtp.html
###! **Use smtp instead of sendmail/postfix.**

 gitlab_rails['smtp_enable'] = true
 gitlab_rails['smtp_address'] = "smtp.qq.com"
 gitlab_rails['smtp_port'] = 465
 gitlab_rails['smtp_user_name'] = "[email protected]"
 gitlab_rails['smtp_password'] = "xxxxx"
 gitlab_rails['smtp_domain'] = "qq.com"
 gitlab_rails['smtp_authentication'] = "login"
 gitlab_rails['smtp_enable_starttls_auto'] = true
 gitlab_rails['smtp_tls'] = true



利用以下命令進行測試郵箱配置是否正確,測試使用方式更多參考:如何測試

gitlab-ctl console
irb(main):002:0>Notify.test_email('[email protected]', '郵件標題', '郵件正題').deliver_now

配置生效

/etc/gitlab/gitlab.rb 配置發生改變的時候想要生效必須執行以下命令:

gitlab-ctl reconfigure

以上的操作執行完畢並且成功之後,這個時候就可以直接在瀏覽器中打開了。

注意:如果依然無法訪問的話,請檢查主機防火牆或雲服務安全組中的 80443 埠是否正常開放,切記!切記!切記!

最後

此篇主要只涉及安裝與基礎配置的部分,如果需要檢視更多包括:忘記 root 密碼重置、備份與恢復等;可以點選這篇部落格(如何安裝與使用 Gitlab)進行檢視,此篇主要參考了這位作者的部落格內容,並根據自己的操作進行整理,感謝這位作者的付出!

其它參考

相關推薦

三十分完成 Gitlab 搭建安裝指南(支援 HTTPS 訪問)

背景 由於我們早期使用 phabricator 進行程式碼管理,但是在使用的過程當中發現和社群的 github 使用方式有些不同,所以為了讓大夥都習慣 github 社群相同的使用風格,所以我們換成了 gitlab 作為公司內部的程式碼管理系統;並且其強大的

linux檔案伺服器apache2的搭建,並支援遠端訪問

開發環境:ubuntu 12.04 64 bit linux核心原始碼是通過http伺服器和git程式碼管理來管理檔案的,使用者可以通過git方式下載,也可以通過http伺服器的方式下載檔案。之前一直在研究linux核心原始碼是如何通過http伺服器下載的,對應的介面如下:

Charles--/安裝/破解/支援https抓包

 一、安裝破解Charles   1.下載charles4.0.2版本,下面的jar包需要和charles版本對應   2.下載地址:https://www.cr173.com/soft/494576.html    2.1這裡下的是破解版裡面有破

CentOS7 下安裝 Nginx 支援 HTTPS 並設定為系統服務

1、安裝 yum install -y gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel wget https://nginx.org/download/nginx-1.15.1.tar.gz tar zxvf nginx

安裝nginx支援https配置 the "ssl" parameter requires ngx_http_ssl_module

原文連結:https://blog.seosiwei.com/detail/28   nginx已安裝,ssl模組未安裝的解決方法: 如果需要在linux中編譯自己的nginx伺服器,請參照:https://www.cnblogs.com/zkfopen/p/10118627.html 一:

linux檔案伺服器的搭建,並支援遠端訪問

開發環境:ubuntu 12.04 64 bitlinux核心原始碼是通過http伺服器和git程式碼管理來管理檔案的,使用者可以通過git方式下載,也可以通過http伺服器的方式下載檔案。之前一直在研究linux核心原始碼是如何通過http伺服器下載的,對應的介面如下:

CentOS7完成mysql的安裝和遠程訪問

b- load 連接 input 初始化 狀態 ges lin dev 詳見鏈接https://blog.csdn.net/weixin_42266606/article/details/80879571 (此處我的本地用戶名root,密碼root;遠程用戶名root,密

Centos7.5 下Nginx配置SSL支援https訪問

核心配置: • 通過指定由受信任的證書頒發機構(CA)頒發的有效證書,將伺服器配置為偵聽埠上的HTTPS流量。• 通過配置nginx.conf檔案來加強安全性。示例包括選擇更強大的密碼,並將所有流量通過HTTP重定向到HTTPS。• 新增HTTP Strict-Transport-Security(HSTS

單點登陸cas實現2之tomcat支援https訪問

keystool  參考 https://blog.csdn.net/yjaspire/article/details/82858084 cas伺服器 (1)生成keystore檔案 keytool -genkey -keystore "D:\keyst

單點登陸2之tomcat支援https訪問

(1)生成keystore檔案 keytool -genkey -keystore "D:\keystore\localhost.keystore" -alias testc

怎麼讓自己的網站支援https 訪問

讓自己的網站能夠通過 https://你的域名 進行訪問。 實現這個需要給你伺服器安裝安全證書。安全證書是有償的,你要去申請,當然如果你的伺服器在阿里雲,你可以向阿里雲免費申請SSL證書(每個帳號最多申請20個)。 申請地方在 安全(雲盾) - 證書服務

phpstudy整合環境Apache配置SSL證書支援https訪問

本文作者使用的整合環境為PHPstudy2018,具SSL證書獲得方法用多種這裡就贅述。只針對本文作者在阿里雲申請的免費SSL證書,做講解。 第一步:登入你的阿里雲帳號找到購買SSL證書,找不到的可以直接在阿里帳號上搜索。 如圖購買就行,無費用。 第二步:新增TXT域名解釋記錄值.

java安裝SSL證書HTTPS訪問

第一步:為伺服器生成證書keytool -genkey -alias tomcat -keypass 123456 -keyalg RSA -keysize 1024 -validity 365 -keystore D:/keys/tomcat.keystore -store

傻瓜式搭建私人網絡硬盤——owncloud安裝指南

ftp上傳 手工 data lan pos clean start osi 客戶 百度雲這個賤貨天天刪我資源,我已經忍無可忍了,於是想搭建一個owncloud來放我的裏番。使用owncloud不僅安全,而且還可以在線播放,離線下載,功能相當強大。 然而·&m

一鍵式搭建私人網絡硬盤、個人網盤,百度網盤——owncloud安裝指南

百度網盤 網絡硬盤 個人網盤 微軟雲 虛擬機 一鍵式搭建私人網絡硬盤、個人網盤,百度網盤——owncloud安裝指南在微軟雲計算上,我們可以創建VM虛擬機部署“owncloud”網絡硬盤。搭建一個owncloud個人網盤。使用owncloud不僅安全,而且還可以在線播放,離線下載,功能相當

docker+jenkins+maven+gitlab搭建整合java持續整合環境(待完成)

環境:虛擬機器下centos7   首先配置jdk: mkdir /usr/local/java 下載jdk1.8:官網:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133

GitLab安裝指南

登入賬戶,輸入密碼 Last login: Thu Dec 6 08:59:16 on console w1:~ jiaguoshang$ ssh [email protected] [email protected]'s password: Last login:

手把手教你搭APM之Skywalking搭建指南(支援Java/C#/Node.js)

手把手教你搭APM之Skywalking 前言 什麼是APM?全稱:Application Performance Management 可以參考這裡: 現代APM體系,基本都是參考Google的Dapper(大規模分散式系統的跟蹤系統)的體系來做的。通過跟蹤請求的

內網linux環境搭建Jenkins服務安裝指南

   在開始前,需要事先確定:JDK版本、tomcat版本、jenkins的版本。這三者選定完畢後,就可以進行以下操作,本人選定是:jdk1.8,tomcat7.0,jenkins2.107.2。      由於是個中轉,這裡就不進行系統環境變數配置。我把三個資料夾放在一個目

linux 搭建 gitlab安裝nginx

一、安裝gitlab 1,安裝依賴 sudo yum install curl openssh-server openssh-clients postfix cronie sudo service postfix start sudo chkconfig postfi