|
[[221024]] Gogsは、Goで書かれた無料のオープンソースGitサービスです。Gogsは、ハードウェアのオーバーヘッドを最小限に抑えながら、簡単にセットアップして独自のプライベートGitサーバーを実行できる、セルフホスト型のGitサーバーです。GogsのWebインターフェースはGitHubによく似ており、MySQL、PostgreSQL、SQLiteデータベースをサポートしています。 このチュートリアルでは、Gogsを使用してUbuntu 16.04にプライベートGitサーバーをインストールし、設定する方法をステップバイステップで解説します。Goプログラミング言語とPostgreSQLのインストール方法、そしてUbuntu上でGoアプリケーションのリバースプロキシとしてNginxウェブサーバーをインストールし、設定する方法について詳しく説明します。 環境の設定私たちが遭遇するもの- システムを更新およびアップグレードする
- PostgreSQLのインストールと設定
- GoとGitをインストールする
- Gogsをインストールする
- Gogs を設定する
- Gogsサーバーの実行
- Nginxリバースプロキシのインストールと設定
- テスト
ステップ1 - システムを更新およびアップグレードする続行する前に、すべての Ubuntu ライブラリを更新し、すべてのパッケージをアップグレードしてください。 次のaptコマンドを実行します。 -
sudo apt update -
sudo apt upgrade
ステップ2 - PostgreSQLのインストールと設定Gogs は、MySQL、PostgreSQL、SQLite、および TiDB データベース システムのサポートを提供します。 このステップでは、Gogs プログラムのデータベースとして PostgreSQL を使用します。 次のaptコマンドを使用して PostgreSQL をインストールします。 -
sudo apt install - y postgresql postgresql - client libpq - dev
インストール後、PostgreSQL サービスを起動し、起動時に自動的に起動するように設定します。 -
systemctl start postgresql -
systemctl enable postgresql
この時点で、PostgreSQL データベースは Ubuntu システムに正常にインストールされています。 次に、Gogs 用のデータベースとユーザーを作成する必要があります。 postgresユーザーとしてログインし、 psqlコマンドを実行して PostgreSQL ユーザー インターフェイスにアクセスします。 -
su - postgres -
psql
gitという名前の新しいユーザーを作成し、このユーザーにCREATEDB権限を付与します。 -
CREATE USER git CREATEDB ; -
\password git
gogs_productionという名前のデータベースを作成し、 gitユーザーをその所有者として設定します。 -
CREATE DATABASE gogs_production OWNER git ;
Gogsデータベースを作成する Gogs 用のgogs_production PostgreSQL データベースとgitユーザーが作成されました。 ステップ3 - GoとGitをインストールするリポジトリから Git をインストールするには、次のaptコマンドを使用します。 -
sudo apt install git
この時点で、システム用にgitという名前の新しいユーザーを作成します。 -
sudo adduser -- disabled - login -- gecos 'Gogs' git
gitアカウントにログインし、 localという名前のディレクトリを作成します。 -
su - git -
mkdir - p / home / git / local
localディレクトリに切り替えて、以下に示すように、 wgetコマンドを使用して Go (*** バージョン) をダウンロードします。 -
cd ~/ local -
wget https : //dl.google.com/go/go1.9.2.linux-amd64.tar.gz
GoとGitをインストールする Go の圧縮ファイルを解凍して削除します。 -
tar - xf go1 . 9.2 . linux - amd64 . tar . gz -
rm - f go1 . 9.2 . linux - amd64 . tar . gz
Goバイナリは~/local/goディレクトリにダウンロードされました。次に、環境変数を設定する必要があります。GOROOTとGOROOT GOPATHシステム環境に設定します。これにより、 gitユーザーとしてgoコマンドを実行できるようになります。 次のコマンドを実行します。 -
cd ~/ -
echo 'export GOROOT=$HOME/local/go' >> $HOME /. bashrc -
echo 'export GOPATH=$HOME/go' >> $HOME /. bashrc -
echo 'export PATH=$PATH:$GOROOT/bin:$GOPATH/bin' >> $HOME /. bashrc
次に、次のようにsource ~/.bashrcを実行して Bash をリロードします。 -
source ~/. bashrc
デフォルトのシェルとして Bash を使用していることを確認してください。 Goプログラミング言語をインストールする 次に、コマンドを実行してgoのバージョンを確認します。 -
go version
次に、下の画像に示す結果が得られるかどうかを確認します。 Goのバージョンを確認する Go はシステム上のgitユーザーの下にインストールされました。 ステップ4 - Gogsを使用してGitサービスをインストールするgitユーザーとしてログインし、 goコマンドを使用して GitHub から Gogs をダウンロードします。
-
su - git -
go get - u github . com / gogits / gogs
このコマンドはGOPATH/srcディレクトリから Gogs のすべてのソース コードをダウンロードします。 $GOPATH/src/github.com/gogits/gogsディレクトリに切り替えて、次のコマンドを使用して Gogs を設定します。 -
cd $GOPATH / src / github . com / gogits / gogs -
go build
エラーが発生していないことを確認してください。 次のコマンドを使用して、Gogs Go Git サーバーを実行します。 -
./ gogs web
このコマンドは、デフォルトでポート 3000 で Gogs を実行します。 Gogs Go Gitサービスをインストールする ウェブブラウザを開き、IPアドレスとポート番号を入力します。私の場合は http://192.168.33.10:3000/ です。 以下のようなフィードバックが届くはずです。 Gogsウェブサーバー Gogs が Ubuntu システムにインストールされました。ターミナルに戻り、 Ctrl + Cと入力してサービスを停止してください。 ステップ5 - Gogs Go Gitサーバーを構成するこのステップでは、Gogs のコンベンション構成を作成します。 Gogs インストール ディレクトリに移動し、 custom/confという名前の新しいディレクトリを作成します。 -
cd $GOPATH / src / github . com / gogits / gogs -
mkdir - p custom / conf /
デフォルトの設定ファイルをcustomディレクトリにコピーし、vim を使用して変更します。 -
cp conf / app . ini custom / conf / app . ini -
vim custom / conf / app . ini
[server]セクションで、 HOST_ADDR 127.0.0.1に変更します。 -
[ server ] PROTOCOL = http DOMAIN = localhost ROOT_URL = %( PROTOCOL ) s : //%(DOMAIN)s:%(HTTP_PORT)s/ HTTP_ADDR = 127.0 . 0.1 HTTP_PORT = 3000
[database]オプションを、データベース情報に応じて変更します。 -
[ database ] DB_TYPE = postgres HOST = 127.0 . 0.1 : 5432 NAME = gogs_production USER = git PASSWD = aqwe123@ #
保存して終了します。 構成項目を確認するには、次のコマンドを実行します。 -
./ gogs web
そして、以下の結果が得られることを確認してください。 サーバーを構成する Gogs は現在、カスタム構成でlocalhostのポート 3000 で実行されています。 ステップ6 - Gogsサーバーを実行するこのステップでは、Ubuntuシステム上でGogsサーバー/etc/systemd/system設定します。/etc/systemd/systemディレクトリにgogs.serviceという新しいサーバー設定ファイルを作成します。 /etc/systemd/systemディレクトリに切り替え、 vim を使用してサーバー構成ファイルgogs.serviceを作成します。 -
cd / etc / systemd / system -
vim gogs . service
次のコードを Gogs サーバー構成ファイルに貼り付けます。 -
[ Unit ] -
Description = Gogs -
After = syslog . target -
After = network . target -
After = mariadb . service mysqld . service postgresql . service memcached . service redis . service -
[ Service ] -
# Modify these two values and uncomment them if you have -
# repos with lots of files and get an HTTP error 500 because -
# of that -
### -
# LimitMEMLOCK = infinity -
# LimitNOFILE = 65535 -
Type = simple -
User = git -
Group = git -
WorkingDirectory = /home/ git / go / src / github . com / gogits / gogs -
ExecStart = /home/ git / go / src / github . com / gogits / gogs / gogs web -
Restart = always -
Environment = USER = git HOME = /home/ git -
[ Install ] -
WantedBy = multi - user . target
次に保存して終了します。 システム サーバーをリロードできるようになりました。 -
systemctl daemon - reload
次のコマンドを使用して Gogs サーバーを起動し、起動時に起動するように設定します。 -
systemctl start gogs -
systemctl enable gogs
Gogsサーバーの実行 Gogs サーバーは現在 Ubuntu 上で実行されています。 検出するには次のコマンドを使用します。 -
netstat - plntu -
systemctl status gogs
下の画像のような結果が得られるはずです。 Gogsはネットワークインターフェースをリッスンしています ステップ7 - Gogs用のNginxリバースプロキシをインストールして設定するこのステップでは、Gogs用のNginxリバースプロキシをインストールして設定します。独自のライブラリ内のNginxパッケージを呼び出します。 Nginx ライブラリを追加するには、次のコマンドを使用します。 -
sudo add - apt - repository - y ppa : nginx / stable
次のコマンドを使用して、すべてのライブラリを更新し、Nginx をインストールします。 -
sudo apt update -
sudo apt install nginx - y
次に、 /etc/nginx/sites-availableディレクトリに移動し、仮想ホスト ファイルgogsを作成します。 -
cd / etc / nginx / sites - available -
vim gogs
次のコードを構成ファイルに貼り付けます。 -
server { listen 80 ; server_name git . hakase - labs . co ; location / { proxy_pass http : //localhost:3000; } }
保存して終了します。 注:ドメイン名に応じてserver_nameフィールドを変更してください。 次に、仮想ホストをアクティブにして、nginx 構成をテストします。 -
ln - s / etc / nginx / sites - available / gogs / etc / nginx / sites - enabled / -
nginx - t
エラーが発生していないことを確認するには、Nginx サーバーを再起動します。 -
systemctl restart nginx
Nginxリバースプロキシのインストールと設定 ステップ8 - テストウェブブラウザを開いて、GogsのURLを入力します。私の場合はhttp://git.hakase-labs.coです。 インストール画面が表示されます。ページ上部で、PostgreSQLデータベースの情報をすべて入力してください。 ゴグスのインストール 次に、一番下までスクロールして、「管理者アカウント設定」ドロップダウン オプションをクリックします。 管理者のユーザー名とメールアドレスを入力します。 設定をインストールするにはgogsと入力してください 次に、「Gogs をインストール」ボタンをクリックします。 その後、下の画像に示す Gogs ユーザー パネルにリダイレクトされます。 ゴグスパネル 以下は Gogs の「管理ダッシュボード」です。 Gogsパネルを閲覧する これで、PostgreSQL データベースと Nginx Web サーバーとともに Gogs が Ubuntu 16.04 にインストールされました。 |