隨著Github的逐漸普及,越來越多的人會選擇在其中建立自己的項目,也就是在Github上發表自己的程式碼。然而,Github限制了單一帳戶上能建立的私人庫的數量,所以一些高頻用戶可能需要透過其他途徑來建立自己的程式碼庫。在這個時候,自己搭建Github就成為了一個選擇。本文主要介紹在Linux系統下,透過Gogs搭建自己的Github,以解放Github帳戶的限制。
一、安裝環境
##在開始建置前,需要確保系統安裝了對應的環境:sudo apt-get update sudo apt-get install mysql-server
sudo apt-get update sudo apt-get install git-core
二、安裝Gogs
wget https://dl.gogs.io/gogs_latest_linux_amd64.tar.gz tar xvfz gogs_latest_linux_amd64.tar.gz
cd gogs ./gogs install
Do you want to install as Windows service/daemon? (y/n) n
Please enter the URL: (e.g. http://domain.com[:port] or http://[IP]:[port]) http://localhost:3000
接下來的安裝步驟會要求輸入一些資料庫相關的內容,需要你依照自己的需求進行設定。這裡建議使用MySQL作為資料庫,並在這一步驟中安裝第2台伺服器。
在需要填寫Git資訊時,需要注意將使用的ssh-key加入GitHub上。
啟動Gogs:cd gogs ./gogs web
如果你的Gogs實例位於生產環境,建議使用Nginx作為反向代理伺服器。
安裝Nginx:sudo apt install nginx
sudo nano /etc/nginx/sites-available/gogs
server { listen 80; server_name git.example.com; # your domain name access_log /var/log/nginx/git.access.log; error_log /var/log/nginx/git.error.log; location / { proxy_pass http://localhost:3000; proxy_set_header Host $http_host; } location /ws { proxy_pass http://localhost:3000; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } location ~ /\. { deny all; } }
請根據自己的需求更改server_name。
確保Nginx解析該vhost:sudo ln -s /etc/nginx/sites-available/gogs /etc/nginx/sites-enabled/
sudo nginx -t sudo systemctl reload nginx
現在你可以在你的Webbrowser裡開啟你的網站,透過GitHub OAuth 登入。
四、總結以上就是透過Gogs搭建自己的Github帳戶的方法。相信在實際操作上也會遇到一些細節問題,但大體上操作還是簡單易懂的。這些細節問題可以上官方文件或論壇尋求協助。自己建構Github不僅可以實現更靈活的管理,還可以成為學習的過程,具有開發者的工具使得它可作為一個學習性質的專案。
以上是Linux下怎麼透過Gogs搭建自己的Github的詳細內容。更多資訊請關注PHP中文網其他相關文章!