Ubuntu1404安裝gogs過程


一、Gogs介紹

Gogs (Go Git Service) 是一款極易搭建的自助 Git 服務。

Gogs 的目標是打造一個最簡單、最快速和最輕松的方式搭建自助 Git 服務。使用 Go 語言開發使得 Gogs 能夠通過獨立的二進制分發,並且支持 Go 語言支持的 所有平台,包括 Linux、Mac OS X、Windows 以及 ARM 平台。

更多介紹請查看

本篇記錄了在內網簡單搭建gogs系統的過程,本鏈接為內網域名請勿點擊

二、安裝過程

1. 安裝git

sudo apt-get install git

2.創建用戶

sudo adduser git
....
su git
cd ~

密碼:qwe

3.下載最新版gogs

wget https://dl.gogs.io/gogs_v0.8.10_linux_amd64.zip
unzip ./
gogs_v0.8.10_linux_amd64.zip

4.運行gogs

./gogs web

然后打開瀏覽器,http://服務器IP:3000/,默認就進入安裝配置界面,進行簡單的配置。

三、配置和運行

1.后台運行

如果要在后台以service模式運行,先將/home/git/gogs/scripts/init/debian/gogs文件拷貝到/etc/init.d/目錄下,切換回原來的用戶Ctrl+d,並增加運行權限sudo chmod +x /etc/init.d/gogs,並將文件做對應修改如下:

PATH=/sbin:/usr/sbin:/bin:/usr/bin
DESC="Go Git Service"
NAME=gogs
SERVICEVERBOSE=yes
PIDFILE=/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME
WORKINGDIR=/home/git/gogs #這個根據自己的目錄修改
DAEMON=$WORKINGDIR/$NAME
DAEMON_ARGS="web"
USER=git  #如果運行gogs不是用的這個用戶,修改對應用戶

以后可以使用

/etc/init.d/gogs start|restart|stop|status

進行gogs應用各種操作了。

2.自定義配置

第一次打開應用可以進行web界面的配置,之后的修改要在/home/git/gogs/custom/conf/app.ini文件中進行修改,可以參考這里。我這里主要修改了

APP_NAME = 雲銅代碼管理平台-Git-Gogs
RUN_USER = git
RUN_MODE = prod

[database]
DB_TYPE = sqlite3
HOST = 127.0.0.1:3306
NAME = gogs
USER = root
PASSWD =
SSL_MODE = disable
PATH = data/gogs.db

[repository]
ROOT = /home/git/gogs-repositories

[server]
#修改了域名,說是生成git默認使用的ssh協議地址用的
DOMAIN = git.yncic.com
HTTP_PORT = 3000
#修改了應用目錄,這個是生成git庫url連接用的
ROOT_URL = http://git.yncic.com/
DISABLE_SSH = false
SSH_PORT = 22
OFFLINE_MODE = false

[mailer]
ENABLED = false

[service]
REGISTER_EMAIL_CONFIRM = false
ENABLE_NOTIFY_MAIL = false
DISABLE_REGISTRATION = false
ENABLE_CAPTCHA = true
REQUIRE_SIGNIN_VIEW = false
#激活了AVATAR頭像的本地緩存,AVATAR頭像默認被牆
ENABLE_CACHE_AVATAR = true

[picture]
#修改了GRAVATAR從多說緩存取照片
GRAVATAR_SOURCE = duoshuo
DISABLE_GRAVATAR = false

[session]
PROVIDER = file

[log]
MODE = file
LEVEL = Info

[security]
INSTALL_LOCK = true
SECRET_KEY = D6Lo2U0eDD4w2PL

3.反向代理

為了綁定域名,需要做反向代理,但是由於安裝在之前用binami redmine搭建的issue管理系統的那台服務器上,因此使用了bitnami提供的apache2做了反向代理,在/opt/redmine-2.3.1-0/apache2/conf/httpd.conf文件最后添加:

<VirtualHost *:80>
        ServerAdmin webmaster@domain.tld
        ServerName git.yncic.com
        ProxyRequests Off
        <Proxy *>
        Order deny,allow
        Allow from all
        </Proxy>
        ProxyPass / http://localhost:3000/
        ProxyPassReverse / http://localhost:3000/
</VirtualHost>

這個還有點問題,添加這個完后原來的應用也跳到了gogs,最后在后面又加了一段,問題才解決,但是也不知道為什么:以下內容已經刪除

<VirtualHost *:80> ServerAdmin webmaster@domain.tld ServerName qa.yncic.com ProxyRequests Off <Proxy *> Order deny,allow Allow from all </Proxy> ProxyPass / http://localhost:8080/
        ProxyPassReverse / http://localhost:8080/
</VirtualHost>

問題已經解決:將/opt/redmine-2.3.1-0/apps/redmine/conf/redmine.conf更改為如下內容,即將之前的“默認目錄設置”改為“虛擬主機設置”運行並綁定域名即可兩個應用通過不同域名分別訪問:

<VirtualHost *:80>
     DocumentRoot  "/opt/redmine-2.3.1-0/apps/redmine/htdocs/public/"
     ServerName qa.yncic.com
     ServerAlias qa.yncic.com
</VirtualHost>

4.LDAP認證配置

在授權認證管理-添加新的源:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM