Linux:Ubuntu18.04 安裝Gogs
0、說明
Gogs 的目標是打造一個最簡單、最快速和最輕鬆的方式搭建自助 Git 服務。使用 Go 語言開發使得 Gogs 能夠通過獨立的二進制分發,並且支持 Go 語言支持的 所有平臺,包括 Linux、Mac OS X、Windows 以及 ARM 平臺。
安裝步驟。
安裝環境
操作系統:Ubuntu Server 18.04
數據庫:MySQL5.7.28
Gogs版本:0.11.91
Git版本:2.17.1
1、安裝Git
# 安裝
sudo apt-get install git
#查看Git版本
git --version
2、安裝MySQL
安裝MySQL
sudo apt-get install mysql-server
初始化MySQL
#初始化MySQL,之後根據需求配置。
#【注】配置中會彈出是否開啓遠程
sudo mysql_secure_installation
- 此時系統會詢問你:
Enter current password for root (enter for none):
,按回車(enter)鍵,因爲第一次登陸是沒有密碼的。 - 然後會詢問你:
Set root password?
—— 按 y ,進行root帳號的密碼設置 - 此時,會提示 New password ,在此輸入你的MySQL密碼,請牢記這個密碼,輸入完成按回車,會提示re-enter new password此時再重複輸入密碼,回車即可。
- 然後,詢問你
Remove anonymous users
,按 y 。 - 然後,詢問你
Disallow root login remotely
,按 y 。 - 然後,詢問你
Remove test database and access to it
,按 y 。 - 然後,詢問你
Reload privilege tables now
,按 y 。 - 最後,您將看到消息
All done!
和Thanks for using MariaDB!
。表示已經設置完成了。
配置MySQL
登錄MySQL
mysql -u root -p
選擇mysql
數據庫,並添加名爲gogs
的用戶;
-- 選擇mysql數據庫
use mysql;
-- 創建gogs用戶,如果出現密碼不符合要求提示,可以嘗試讓密碼滿足數字+大小寫字母+字符形式。
create user 'gogs'@'localhost' identified by 'JLAUIoT223223.';
-- 賦予gogs用戶所有權限
grant all privileges on gogs.* to 'gogs'@'localhost';
-- 更新配置信息
flush privileges;
-- 退出
exit
3、安裝Gogs
創建用戶
##創建用戶,根據提示輸入相關用戶信息
sudo adduser git
#切換用戶
su git
#切換目錄
cd /home/git
安裝Gogs
#下載二進制安裝包,根據實際情況去gogs官網找對應的最新版,使用wget下載,示例如下:
wget https://dl.gogs.io/0.11.91/gogs_0.11.91_linux_amd64.tar.gz
#解壓
tar -zxvf gogs_0.11.91_linux_amd64.tar.gz
初始化Gogs
#進入腳本文件夾
cd /home/git/gogs/scripts/
#使用mysql.sql創建gogs數據庫,這裏會要求輸入密碼。
sudo mysql -u root -p < mysql.sql
配置Gogs
運行Gogs
#進入gogs根目錄,執行
./gogs web
訪問http://你的服務器IP:3000
,進行配置。
配置完成後,會在gogs
文件夾下生成custom
文件夾,該文件夾裏面爲Gogs相關配置,配置文件路徑爲你的路徑/gogs/custom/conf/app.ini
,之後修改配置文件可能需要,修改完成配置。
按Ctrl+C
退出。
配置Gogs自啓動
在gogs
文件的scripts/systemd
下,有gogs.service
文件,根據實際情況修改後,複製至/etc/systemd/system/
或者/usr/lib/systemd/system/
文件夾下(作者複製至第二個文件夾下,可能需要創建system目錄),然後輸入如下指令:
#創建service
sudo systemctl enable gogs.service
#啓動service
sudo systemctl start gogs.service
4、Nginx反向代理
安裝Nginx
sudo apt install nginx -y
Nginx配置說明不做過多介紹,感興趣的朋友可自行上網搜索,推薦幾篇博文:
創建虛擬主機文件gogs
:
sudo nano /etc/nginx/sites-available/gogs
粘貼下述代碼:
server {
listen 80;
server_name 10.5.0.223;
location / {
proxy_pass http://localhost:3000;
}
}
【注意】server_name爲您的域名或者本地IP地址。
保存退出。
現在激活虛擬主機並且測試 nginx 配置。
ln -s /etc/nginx/sites-available/gogs /etc/nginx/sites-enabled/
nginx -t
如果無錯誤,重啓Nginx服務:
確保沒有遇到錯誤,重啓 Nginx 服務器。
systemctl restart nginx
【注意】在配置Nginx之前,如果已經對Gogs進行了配置,則需要進入gogs文件夾,修改custom/conf/app.ini
文件,如域名、URL等,如果不修改,可能會影響Gogs的正常使用,修改完成後,使用sudo systemctl restart gogs.service
重啓服務,使配置生效。
5、測試
打開瀏覽器,輸入您的域名或者IP地址,即可訪問。
【參考鏈接】