Ubuntu14.04でGogsを設定する方法

前書き ##

[ Gogs](http://gogs.io/)は、Goで記述された自己ホスト型のGitサービスです。実行が簡単で、システムの使用率が低くなっています。セルフホストのGitサービスを構築するための最も簡単、最速、そして最も簡単な方法を目指しています。

このチュートリアルの最後に、Gogsの実行中のインスタンスがあります。これには、Webインターフェイス、管理ダッシュボード、およびGitのプルやプッシュなどの操作へのアクセスが含まれます。

前提条件

このチュートリアルに従うには、次のものが必要です。

ステップ1-データベースをインストールする

このステップでは、バックエンドGogsデータベースを作成します。

ログイン後、システムソフトウェアパッケージが最新であることを確認してください。

sudo apt-get update

[MySQL](https://cloud.tencent.com/product/cdb?from=10680)をバックエンドサーバーとして使用し、インストールします。ここでの -yフラグは、すべてのプロンプトがそうであることを前提としています。

sudo apt-get-y install mysql-server

インストールプロセス中に、システムはデータベース** root **ユーザーのパスワードを入力するように要求します。このチュートリアルの後半で必要になるため、安全に使用し、覚えておいてください。

次に、 gogs.sqlという名前のファイルを作成して開きます。ここでは nanoエディターを使用していますが、お好みのテキストエディターを使用できます。

nano gogs.sql

次のコンテンツをファイルに貼り付けて、保存して閉じます。

DROP DATABASE IF EXISTS gogs;
CREATE DATABASE IF NOT EXISTS gogs CHARACTER SET utf8 COLLATE utf8_general_ci;

最後に、MySQLを使用して gogs.sqlを実行し、Gogsデータベースを作成します。 your_passwordを、この手順の前半で選択したルートパスワードに置き換えます。

:このコマンドでは、 -p記号とパスワードの間にスペースはありません。

mysql -u root -pyour_password < gogs.sql

ソースコードからGogsをインストールするには、GitやMercurialなどのバージョン制御ツールを使用してからインストールする必要があります。

sudo apt-get-y install mercurial git

SSH経由でリポジトリのクローンを作成する場合は、機能するSSHサーバーが必要ですが、幸い、Ubuntu14.04にはすぐに使用できるサーバーが用意されています。

**ステップ2-Go **をインストールする##

GogsはGoで記述されているため、Gogをコンパイルする前にインストールする必要があります。

まず、Goのいくつかの環境変数を設定する必要があります。これを行うには、編集用に 〜/ .bashrcファイルを開きます。

nano ~/.bashrc

ファイルの最後に次の行を追加し、閉じて保存します。

export GOPATH=/home/git/go
export GOROOT=/usr/local/src/go
export PATH=${PATH}:$GOROOT/bin

次に、変更を適用します。

source ~/.bashrc

次に、 wgetを使用して、Goの最新のコンパイル済みバージョンを[Webサイト](http://golang.org/dl/)からダウンロードします。この記事を書いている時点で、最新のファイルは go1.4.2.linux-amd64.tar.gzです。

wget https://storage.googleapis.com/golang/go1.4.2.linux-amd64.tar.gz

tarを使用してアーカイブを解放します。

tar zxf go1.4.2.linux-amd64.tar.gz

ディレクトリを 〜/ .bashrcで定義した $ GOROOTディレクトリに変更します。

sudo mv go $GOROOT

ここで、ターミナルに「go」と入力すると、次のようになります。

go

次のようなものが表示されます。

Go is a tool for managing Go source code.
​
Usage:
​
 go command [arguments]
​
...
​
Use "go help [topic]"for more information about that topic.

ステップ3-サービスとしてGogsをインストールして開始する

Goには、Goプロジェクトのソースコードとそのすべての依存関係を簡単にダウンロードするための組み込みコマンド getがあります。これを使用して、Gogsをダウンロードします。

go get-d github.com/gogits/gogs

Gogsのソースコードは $ GOPATH / src / github.com / gogits / gogsに移動するので、そこに移動します。

cd $GOPATH/src/github.com/gogits/gogs

次に、バイナリファイルをビルドして生成します。このコマンドの実行には時間がかかる場合があります。

go build

[Supervisor](http://supervisord.org/)を使用してGogsサービスを管理します。

まず、インストールしましょう。

sudo apt-get-y install supervisor

スーパーバイザー構成セクションを作成して、Gogsデーモンを作成しましょう。まず、ログファイル用のディレクトリを作成します。

sudo mkdir -p /var/log/gogs

次に、スーパーバイザー構成ファイルを開いて編集します。

sudo nano /etc/supervisor/supervisord.conf

以下をファイルに追加して、Gogsセクションを作成します。

[ program:gogs]
directory=/home/git/go/src/github.com/gogits/gogs/
command=/home/git/go/src/github.com/gogits/gogs/gogs web
autostart=true
autorestart=true
startsecs=10
stdout_logfile=/var/log/gogs/stdout.log
stdout_logfile_maxbytes=1MB
stdout_logfile_backups=10
stdout_capture_maxbytes=1MB
stderr_logfile=/var/log/gogs/stderr.log
stderr_logfile_maxbytes=1MB
stderr_logfile_backups=10
stderr_capture_maxbytes=1MB
environment = HOME="/home/git", USER="git"
user = git

このセクションでは、Gogsを起動し、Supervisorを使用して自動的に起動し、ログファイルの場所と対応する環境変数を指定するために実行するコマンドを定義します。

次に、Supervisorを再起動します。

sudo service supervisor restart

次のコマンドを使用して、Gogsが実行されているかどうかを確認できます。

ps -ef | grep gogs

これに似た出力が表示されるはずです。

root      13441343008:55?00:00:00/home/git/go/src/github.com/gogits/gogs/gogs web

stdout.logファイルを表示して、サーバーが実行されていることを確認することもできます。

tail /var/log/gogs/stdout.log

次のような行が表示されます。

2015 /03/0914:24:42[I] Gogs: Go Git Service 0.5.16.0301 Beta

また、URLが「http:// your_server_ip:3000 /」のWebページにアクセスできる必要があります。これによりインストールページにリダイレクトされますが、まだ入力されていません。

ステップ4-Nginxをリバースプロキシとして設定

ドメイン名をGogsに簡単にバインドできるように、** Nginx **をリバースプロキシとして構成し続けましょう。

まず、Nginxをインストールします。

sudo apt-get-y install nginx

次に、gogsのNginx構成ファイルを作成します。

sudo nano /etc/nginx/sites-available/gogs

以下を追加し、 your_server_ipをTencentCVMのIPアドレスに置き換えます。 Tencent CVMのドメイン名を使用している場合は、ここでドメイン名を使用できます。

server {
 listen 80;
 server_name your_server_ip;
​
 proxy_set_header X-Real-IP  $remote_addr; # pass on real client IP
​
 location /{
  proxy_pass http://localhost:3000;}}

そして、Nginxがそれを使用できるように、それにシンボリックリンクを作成します。

sudo ln -s /etc/nginx/sites-available/gogs /etc/nginx/sites-enabled/gogs

最後に、Nginxを再起動して、仮想ホスト構成をアクティブ化します。

sudo service nginx restart

これで、URLvhttp:// your_server_ip / を使用して、ポートを指定せずにWebページにアクセスできるようになります。

ステップ5-ゴグを初期化する

最初の実行時にGogsを初期化する簡単な手順もあります。

http:// your_server_ip / installにアクセスし、次のオプションを入力します。これらの多くはすでに入力されていますが、必ず赤い変数をサーバーの値に置き換えてください。

最初の部分では、** GogsにはMySQL、** [** PostgreSQL ](https://cloud.tencent.com/product/postgresql?from=10680)、またはSQLite3 **が必要です。次のように入力してください。

2番目の部分である** Gogs General Settings **に、次のように入力します。

オプションのメールと通知の設定をスキップし、[**管理者アカウントの設定] **で、管理者のユーザー名とパスワードを選択し、メールアドレスを含めます。次のステップで、adminユーザー名を your_admin_usernameに設定します。

最後に、[**インストールゴグ] **をクリックしてログインします。

ステップ6-テストゴグ

これですべて完了です。簡単なプル/プッシュテストを実行して、Gogsが正しく実行されていることを確認しましょう。

まず、 http:// your_server_ip / repo / createに移動し、** my-test-repo **という名前のリポジトリを作成してから、[このリポジトリを初期化するためにREADME.mdを使用]オプションをクリックします。 。

これで、クローンを作成できるはずです。まず、ホームディレクトリに移動します。

cd

次に、リポジトリのクローンを作成します。

git clone http://your_server_ip/your_admin_username/my-test-repo.git

リポジトリディレクトリに切り替えます。

cd my-test-repo

README.mdを更新します。

echo 'I love Gogs!'>> README.md

変更を送信してプッシュします。このコマンドは、Gogsのユーザー名とパスワードを要求します。

git add --all && git commit -m "init commit"&& git push origin master

結論として ###

ここで、 http:// your_server_ip / your_admin_username / my-test-repoに戻ると、README行に「IlikeGogs!」が追加されているのがわかります。とても簡単です!

その他のUbuntuチュートリアルについては、[Tencent Cloud + Community](https://cloud.tencent.com/developer?from=10680)にアクセスして詳細を確認してください。


参照:「Ubuntu14.04でゴグを設定する方法」

Recommended Posts

Ubuntu14.04でGogsを設定する方法
Ubuntu14.04でRを設定する方法
Ubuntu14.04でShinyServerをセットアップする方法
Ubuntu18.04で時刻同期を設定する方法
Ubuntu18.04でDNSサーバーを設定する方法
Ubuntu16.04でPostgreSQLの起動を設定する方法
UbuntuとRaspbianでJavaホームを設定する方法
Ubuntu14.04でMasterlessPuppet環境をセットアップする方法
Ubuntu14.04でUFWを使用してファイアウォールを設定する方法
Ubuntu16.04で匿名ダウンロード用にvsftpdを設定する方法
Ubuntu14.04で本番Elasticsearchクラスターをセットアップする方法
Ubuntu16.04でApache仮想ホストを設定する方法
Ubuntu20.04でApache仮想ホストを設定する方法
Ubuntu14.04でNginxを使用してパスワード認証を設定する方法
Ubuntu16.04でユーザーディレクトリ用にvsftpdを設定する方法
Ubuntu18.04サーバーで静的IPを設定する方法
Ubuntu18.04にGogsをインストールして構成する方法
Ubuntu18.04サーバーで静的IPを設定する方法
CentOS8でSSHキーを設定する方法
ubuntu14.04で静的IPを設定する方法を詳しく説明します
Ubuntu16.04用にGhostワンクリックアプリを設定する方法
Ubuntu16.04に基づいて固定IPを設定する方法
Ubuntu20.04にRubyをインストールする方法
Ubuntu20.04にMemcachedをインストールする方法
Ubuntu20.04にJavaをインストールする方法
Ubuntu20.04にMySQLをインストールする方法
Ubuntu20.04にElasticsearchをインストールする方法
UbuntuにProtobuf3をインストールするための詳細なチュートリアル
Ubuntu20.04にNginxをインストールする方法
Ubuntu16.04にNode.jsをインストールする方法
Ubuntu20.04にMySQLをインストールする方法
Ubuntu20.04にVagrantをインストールする方法
Ubuntu14.04にBacula-Webをインストールする方法
Ubuntu16.04にPostgreSQLをインストールする方法
Ubuntu20.04にGitをインストールする方法
Ubuntu18.04にAnaconda3をインストールする方法
Ubuntu18.04にMemcachedをインストールする方法
Ubuntu16.04にJenkinsをインストールする方法
Ubuntu14.04にMemSQLをインストールする方法
Ubuntu20.04にGoをインストールする方法
Ubuntu16.04にMongoDBをインストールする方法
Ubuntu14.04にMailpileをインストールする方法
Ubuntu16.04にPrestaShopをインストールする方法
Ubuntu14.04でPHP7にアップグレードする方法
Ubuntu20.04にSkypeをインストールする方法
Ubuntu20.04にJenkinsをインストールする方法
Ubuntu18.04にPython3.8をインストールする方法
Ubuntu18.04にKVMをインストールする方法
Ubuntu20.04にKVMをインストールする方法
ubuntu14.04にopencv3.0.0をインストールする方法
Ubuntu20.04にAnacondaをインストールする方法
Ubuntu16.04にPrometheusをインストールする方法
Ubuntu18.04にJenkinsをインストールする方法
Ubuntu14.04にDjangoをデプロイする方法
Ubuntu20.04にApacheをインストールする方法
Ubuntu20.04にRをインストールする方法
Ubuntu16.04にMoodleをインストールする方法
Ubuntu14.04にSolr5.2.1をインストールする方法
Ubuntu16.04にTeamviewerをインストールする方法
Ubuntu14.04でNginxを保護する方法
Ubuntu20.04にMariaDBをインストールする方法