CentOS 7安裝Gogs程式碼倉庫
阿新 • • 發佈:2020-07-19
1、準備環境
1. MySQL
2. Gogs二進位制包
3. git
4. git使用者
5. nginx
6. 域名
7. ssl證書
1.1 建立gogs使用者和對應的資料庫並授權
create database `gogs` character set utf8 collate utf8_general_ci; create user 'gogs'@'localhost' identified by '密碼'; create user 'gogs'@'127.0.0.1' identified by '密碼'; grant all privileges on gogs.* to 'gogs'@'localhost'; grant all privileges on gogs.* to 'gogs'@'127.0.0.1'; flush privileges;
1.2 下載Gogs二進位制包
wget https://dl.gogs.io/0.11.91/gogs_0.11.91_linux_amd64.tar.gz
1.3 安裝git
yum install git -y
1.4 新增git使用者
useradd git
echo "密碼"|sdtin passwd git
1.5 安裝nginx
yum install nginx -y
2、安裝Gogs
2.1 切換到git使用者
su - git
2.2 安裝配置Gogs
# 將安裝包移動到git家目錄 cp /root/gogs_0.11.91_linux_amd64.tar.gz /home/git # 解壓安裝包 tar xf gogs_0.11.91_linux_amd64.tar.gz cd gogs/ # 開始安裝 ./gogs web
2.3 瀏覽器上配置
瀏覽器開啟http://server_ip:3000
開始配置:
如上圖,根據實際情況進行填寫,ssh埠我這裡改成了2222是為了避免和sshd服務的埠衝突。
確認之後點選立即安裝
即可,如果有報錯,根據報錯資訊進行修改之後再次點選立即安裝
即可。
2.4 註冊使用者
建議安裝完成之後直接到首頁選擇註冊使用者,因為之前沒有建立管理員並且預設第一個註冊的使用者就是管理員。
選擇右上角的註冊:
填寫好資訊之後點選建立使用者
。馬上就會跳轉到登入介面:
登入之後進入首頁:
![image-20200719111719135](/Users/staryjie/Library/Application Support/typora-user-images/image-20200719111719135.png)
至此,安裝完成!使用方法與GitLab和GitHub相差不大。
3、其他配置
3.1 開啟Gogs的ssh連線
# 將app.ini中START_SSH_SERVER改為true即可,埠建議改成其他不和sshd服務衝突的埠。
sed -i.bak 's#START_SSH_SERVER = false#START_SSH_SERVER = true#g' /home/git/gogs/custom/conf/app.ini
3.2 使用nginx代理
cat /etc/nginx/conf.d/gogs.conf
server {
server_name 域名或IP;
listen 80; #或者443,如果你使用 HTTPS 的話
# ssl on; 是否啟用加密連線
# 如果你使用HTTPS,還需要填寫ssl_certificate和ssl_certificate_key
location / { #如果你希望通過子路徑訪問,此處修改為子路徑,注意以/開頭和結束
proxy_pass http://127.0.0.1:3000/;
}
}
語法檢查過載配置檔案
nginx -t
systemctl reload nginx.service
3.4 域名解析
在對應域名供應商的DNS解析頁面新增相應的A記錄即可(要和gogs.conf中的配置對應)。
3.5 ssl證書
有多種方法實現:
- 付費的
- 免費的
3.5.1 付費的ssl證書
去對應的ssl代理商購買,比如阿里雲、騰訊雲、又拍雲等等。
3.5.2 免費的ssl證書
- 阿里雲、騰訊雲、又拍雲等代理商提供一個使用者限定個數的免費單域名ssl證書
- 通過各種工具獲取免費的ssl證書,例如 certbot之類的