阿里雲 GitLab 折騰筆記
想自己搭建一個 git 服務來玩一玩,正好有個阿里雲,雖然配置很渣,但是也想著隨便搞一搞。
於是從 ofollow,noindex">官方教程 開始,遇到一些坑,檢視一些資料,解決一些問題,有了下面的筆記。
選擇對應的版本。我的阿里雲裝的是 CentOS 7
,所以選擇 CentOS 7
的版本。
通過下面的命令可以檢視當前屬於什麼系統
lsb_release -a
安裝和配置一些必要的依賴
Step1
通過下面的命令,在系統防火牆中開啟 HTTP 和 SSH 的訪問。
sudo yum install -y curl policycoreutils-python openssh-server sudo systemctl enable sshd sudo systemctl start sshd sudo firewall-cmd --permanent --add-service=http sudo systemctl reload firewalld
在執行
sudo firewall-cmd --permanent --add-service=http
時可能會遇到 FirewallD is not running
的錯誤提示;
意思是: 防火牆服務沒有執行
。這開啟防火牆服務就行了:
systemctl start firewalld.service
然後重新執行命令就會提示 success
Step 2
執行下面命令,安裝並開啟 Postfix
郵件通知服務
sudo yum install postfix sudo systemctl enable postfix sudo systemctl start postfix
這裡遇到一個報錯
解決辦法是修改 /etc/postfix/main.cf
檔案中的下面資訊
inet_interfaces = all inet_protocols = ipv4 // 或者 all
然後重啟服務就好了:
sudo systemctl restart postfix
新增 GitLab 軟體包的倉庫,並安裝
安裝 GitLab
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash
設定 GitLab 訪問域名
sudo EXTERNAL_URL="http://gitlab.example.com" yum install -y gitlab-ee
注意:這裡 http://gitlab.example.com
替換成對應的 域名 或者 IP
我這裡設定成 IP 加 8888 埠,這需要在阿里雲上配置安全組規則,出入方向都要配置對應埠。例如:
然後設定防火牆:
# 開啟 8888 埠 firewall-cmd --zone=public --add-port=8888/tcp --permanent # 重啟防火牆 systemctl restart firewalld
然後再執行下面的命令,等待安裝完畢(安裝過程可能比較久)
sudo EXTERNAL_URL="http://xx.xx.xx.xx:8888" yum install -y gitlab-ee
如果安裝完之後要修改訪問的域名或者 IP,則修改 /etc/gitlab/gitlab.rb
檔案中的 external_url
內容
然後重新配置服務
gitlab-ctl reconfigure
然後就可能用設定的域名(IP)訪問了。
登入
第一次開啟,會開啟密碼設定頁面,讓你設定密碼。
設定密碼之後,使用使用者名稱 root 和設定的密碼登入。
最後來個登入成功的圖:
遇到的問題
一些常用命令
//啟動 sudo gitlab-ctl start //停止 sudo gitlab-ctl stop //重啟 sudo gitlab-ctl restart //檢視狀態 sudo gitlab-ctl status //使更改配置生效 sudo gitlab-ctl reconfigure
開啟阿里雲 SWAP
剛安裝結束,開啟 GitLab 之後,阿里雲就開始卡爆了,GitLab 也直接無法訪問,或者是直接 502,白忙活的半天!記憶體爆炸了啊!這時候想到阿里雲好像是沒開啟 SWAP 的。於是就有了下面的內容。
檢視 swap 分割槽:
cat /proc/swaps
發現是空的,下面來開啟 swap
詳情參考: 雲伺服器 ECS Linux SWAP 配置概要說明
-
建立swap大小為bs(block_size)*count(number_of_block)=4G
dd if=/dev/zero of=/mnt/swap bs=1M count=4096
-
設定交換分割槽檔案
mkswap /mnt/swap
-
立即啟用交換分割槽檔案
swapon /mnt/swap
-
許可權設定
提示:swapon: /mnt/swap:不安全的許可權 0644,建議使用 0600,設定許可權
chmod 0600 /mnt/swap
然後重新啟用
-
設定開機時自啟用 SWAP 分割槽
需要修改檔案 /etc/fstab 中的 SWAP 行,在檔案末位新增
/mnt/swap swap swap defaults 0 0
-
修改 swpapiness 引數
cat /proc/sys/vm/swappiness
通過上面命令看到 swappiness 值為 0,需要在實體記憶體使用完畢後才會使用 SWAP 分割槽
我們配置為空閒記憶體少於 10% 時才使用 SWAP 分割槽
echo 10 >/proc/sys/vm/swappiness
若需要永久修改此配置,在系統重啟之後也生效的話,可以修改 /etc/sysctl.conf 檔案,並修改以下內容:
vm.swappiness=10
開啟 SWAP 之後,GitLab 就能訪問了!