Gogsを使用して個人git倉庫を構築

2427 ワード

前言
一部の倉庫はGithubにアップロードするのは適切ではないので、自分のプライベート倉庫を建てました.
Gogsをインストールする前にGitlabも試してみましたが、Gitlabは私の1 gの小さなメモリをそのまま食べてしまったので、Gogsを交換しましたが、100 mのメモリしか食べていないことに気づき、効果的でした
環境
  • Ubuntu Server 14.04.1 LTS 64
  • テンセント雲乞食版サーバー1コア1 GB 1 Mbps
  • インストール
    Gogsの構成に必要な環境
    nginxのインストール
    sudo apt-get install nginx
    

    gitのインストール
    sudo apt-get install git
    

    MySQLのインストール
    sudo apt-get install mysql-server
    

    データベースへのアクセス
    mysql -u root -p
    

    gogsデータベースの作成
    SET GLOBAL storage_engine = 'InnoDB';
    CREATE DATABASE gogs CHARACTER SET utf8 COLLATE utf8_bin;
    GRANT ALL PRIVILEGES ON gogs.* TO ‘root’@‘localhost’ IDENTIFIED BY 'YourPassword';
    FLUSH PRIVILEGES;
    QUIT;
    

    Gogs用に個別のユーザーを作成
    sudo adduser git
    ....
    

    cdからルートディレクトリ、ダウンロードGogs
    Gogs公式ダウンロードページ
    su git
    cd ~
    wget https://dl.gogs.io/0.11.4/linux_amd64.zip
    unzip linux_amd64.zip
    

    Gogsの構成と実行
    Gogsサービスプロファイルの変更
    vim /home/git/gogs/scripts/init/debian/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        ,      
    
    rootアカウントをチェックし、/etc/init.d/にコピーします.
    sudo cp /home/git/gogs/scripts/init/debian/gogs /etc/init.d/
    

    実行権限の追加
    sudo chmod +x /etc/init.d/gogs
    

    サービスのコピー
    cp /home/git/gogs/scripts/systemd/gogs.service /etc/systemd/system/
    

    Gogsの起動
    sudo service gogs start
    

    自分のブラウザにGogsを設定し、localhostを自分のipアドレスに置き換えます.http://localhost:3000/install
    Gogsに関するプロファイルは/home/git/gogs/custom/conf/app.iniにあり、関連プロファイルはGogsドキュメントにあります.
    nginx逆エージェント
    Gogsにアクセスするには、ドメイン名の後ろに3000のポート番号を追加する必要があります.nginx逆エージェントを設定し、2級ドメイン名で指定したポートにジャンプできます.
    適切なプロファイルの作成
    sudo vim /etc/nginx/sites-enabled/gogs.conf
    

    追加
    server {
            listen 80;
            server_name  code.limchihi.cn;
            location / {
                    proxy_pass http://127.0.0.1:3000/;
            }
    }
    

    Done