ユーザ用ツール

サイト用ツール


サーバ:aws:サーバ構築手順:amazon_linux_2_に_gitlab_community_edition_gitlab-ce_をインストール

差分

このページの2つのバージョン間の差分を表示します。

この比較画面にリンクする

両方とも前のリビジョン 前のリビジョン
次のリビジョン
前のリビジョン
最新のリビジョン 両方とも次のリビジョン
サーバ:aws:サーバ構築手順:amazon_linux_2_に_gitlab_community_edition_gitlab-ce_をインストール [2020/04/06 18:17]
humolife [Gitlab CE のインストール]
サーバ:aws:サーバ構築手順:amazon_linux_2_に_gitlab_community_edition_gitlab-ce_をインストール [2020/04/08 16:51]
humolife
行 1: 行 1:
-====== Amazon Linux 2 に Gitlab Community Edition(gitlab-ce)をインストール ======+====== Amazon Linux 2 に GitlabCommunity Edition / Enterprise Edition)をインストール ======
 サーバにインストールできる Gitlab には Community Edition(CE)と Enterprise Edition(EE)の2種類あります。\\ サーバにインストールできる Gitlab には Community Edition(CE)と Enterprise Edition(EE)の2種類あります。\\
-参照 [[https://www.gitlab.jp/installation/ce-or-ee/|Community EditionとEnterprise Edition]]+[[https://www.gitlab.jp/installation/ce-or-ee/|Community EditionとEnterprise Edition]]
  
-今回行ったのは CE のインストールですが、一部コマンドを変更することで EE のインストールも可能かと思われます。+今回行ったのは CE のインストールですが、一部コマンドを変更することで EE のインストールも可能す。
  
 ===== 必要スペック ===== ===== 必要スペック =====
-必要スペックは、バージョンアップで増える可能性があるため、リンク先の最新情報を見ることをオススメします。+必要スペックは、バージョンアップで高くなる可能性があるため、リンク先の最新情報を見ることをオススメします。
   * CPU:[[https://docs.gitlab.com/ee/install/requirements.html#cpu|2コア以上推奨]]   * CPU:[[https://docs.gitlab.com/ee/install/requirements.html#cpu|2コア以上推奨]]
   * メモリ:[[https://docs.gitlab.com/ee/install/requirements.html#memory|8GB RAM 以上推奨]]   * メモリ:[[https://docs.gitlab.com/ee/install/requirements.html#memory|8GB RAM 以上推奨]]
行 17: 行 17:
 |t2.large|2|8| |t2.large|2|8|
  
-t2.micro でもスワップを 8GB あてるなどとすれば動かせなくないですが、実用には耐えないので。。。+インストールを試すだけなら t2.micro でもスワップを 8GB あてればインストール成功しますが、動作が重く実用には耐えないかと。。。\\
  
 ※ t2.micro で Gitlab のインストール中にメモリ不足のエラーがでる場合、スワップの割り当てを増やせばインストールに成功します。 ※ t2.micro で Gitlab のインストール中にメモリ不足のエラーがでる場合、スワップの割り当てを増やせばインストールに成功します。
  
-インストールを試すだけなら t2.micro でもできなくはないですが、動作が重いです。\\ 
  
 ===== AWSの準備  ===== ===== AWSの準備  =====
行 49: 行 48:
 |SSH|TCP|22|マイIPアドレス| |SSH|TCP|22|マイIPアドレス|
  
-===== Gitlab のインストール ===== +===== Amazon Linux 2 の初期設定 ===== 
-公式が用意してくれている Omnibus package を使ってインストールします。\\ +Gitlab インストールのために、まずは Amazon Linux 2 の初期設定を行います。
-Gitlab を動かすのに必要な Nginx や PostgreSQL、Let's Encrypt などなどを一括管理し、インストールしてくれる凄いやつです。 +
- +
-(私は、初回インストール時に Apache などを予めインストールしておく必要があるのかと思い、Apache を手動インストールしてから Gitlab CE をインストールしたところ、Omnibus package が管理する Nginx と競合してエラーが発生しましたorz) +
- +
-==== Amazon Linux 2 の初期設定 ==== +
-Gitlab CE インストールのために、まずは Amazon Linux 2 の初期設定を行います。+
 <code> <code>
 # OS バージョン確認 # OS バージョン確認
行 70: 行 63:
  
 # Swap の確認 # Swap の確認
-free -m +free -m 
-              total        used        free      shared  buff/cache   available +         total    used    free   shared  buff/cache   available 
-Mem:           7974          78        7542           0         353        7669 +Mem:      7974      78    7542        0         353        7669 
-Swap:                                 0+Swap:                    0
  
 # ストレージの空き容量の確認 # ストレージの空き容量の確認
-df -h --total +df -h --total 
-/dev/xvda1       30G  1.3G   29G   5% /+ファイルシス   サイズ  使用  残り 使用% マウント位置 
 +/dev/xvda1      30G  1.3G   29G   5% /
  
 # Swap に 4GB 割り当て(1024 * 4 = 4096) # Swap に 4GB 割り当て(1024 * 4 = 4096)
-sudo dd if=/dev/zero of=/swapfile1 bs=1M count=4096 +sudo dd if=/dev/zero of=/swapfile1 bs=1M count=4096 
-sudo chmod 600 /swapfile1 +sudo chmod 600 /swapfile1 
-sudo mkswap /swapfile1 +sudo mkswap /swapfile1 
-sudo swapon /swapfile1+sudo swapon /swapfile1
  
 # Swap の確認 # Swap の確認
-free -m +free -m 
-              total        used        free      shared  buff/cache   available +         total    used    free   shared  buff/cache   available 
-Mem:           7974          81        3329           0        4564        7610 +Mem:      7974      81    3329               4564        7610 
-Swap:          4095                  4095+Swap:     4095          4095
  
 # アップデート # アップデート
-sudo yum update -y+sudo yum update -y
  
 # タイムゾーンの確認 # タイムゾーンの確認
-sudo timedatectl+sudo timedatectl
  
 # タイムゾーンに Asia/Tokyo を設定 # タイムゾーンに Asia/Tokyo を設定
-sudo timedatectl set-timezone Asia/Tokyo+sudo timedatectl set-timezone Asia/Tokyo
  
 # 時間が Asia/Tokyo になってるか確認 # 時間が Asia/Tokyo になってるか確認
-date+date
  
 # ロケールの確認 # ロケールの確認
-localectl status+localectl status
  
 # 指定可能なロケールの確認 # 指定可能なロケールの確認
-localectl list-locales | grep ja+localectl list-locales | grep ja
  
 # ロケールの変更 # ロケールの変更
-sudo localectl set-locale LANG=ja_JP.utf8+sudo localectl set-locale LANG=ja_JP.utf8
 </code> </code>
 これでひとまず Gitlab のインストール準備が完了しました。 これでひとまず Gitlab のインストール準備が完了しました。
  
-==== Gitlab CE のインストール ====+===== Gitlab のインストール ====
 +公式が用意してくれている Omnibus package を使ってインストールします。\\ 
 +Gitlab を動かすのに必要な Nginx や PostgreSQL、Let's Encrypt などなどを一括管理し、インストールしてくれる凄いやつです。 
 + 
 +(私は、初回インストール時に Apache などを予めインストールしておく必要があるのかと思い、Apache を手動インストールしてから Gitlab CE をインストールしたところ、Omnibus package が管理する Nginx と競合してエラーが発生しましたorz) 
 今回は Amazon Linux 2 へのインストールということで、公式マニュアルの CentOS 7 のインストール方法を参照します。\\ 今回は Amazon Linux 2 へのインストールということで、公式マニュアルの CentOS 7 のインストール方法を参照します。\\
-  * [[https://www.gitlab.jp/installation/ce-or-ee/|Community EditionとEnterprise Edition]] +  * [[https://www.gitlab.jp/installation/?version=ce|Community Edition のインストール方法]] 
-  * [[https://www.gitlab.jp/installation/?version=ce|Community Editionのインストール方法]]+  * [[https://www.gitlab.jp/installation/|Enterprise Edition のインストール方法]] 
 HTTP と SSH については AWS のセキュリティグループで管理しているためスキップします。\\ HTTP と SSH については AWS のセキュリティグループで管理しているためスキップします。\\
 Postfix の設定についてもひとまずスキップします。 Postfix の設定についてもひとまずスキップします。
  
-=== Community Edition の場合 === +※ コマンド中で EXTERNAL_URL に指定している URL は、Gitlab を閲覧したい URL に書き換えてください。\\
-コマンド中の http://gitlab.example.com となっている部分は、インストールしたいURLに書き換えてください。\\+
 (ドメインがない場合は IP アドレスを指定するなど) (ドメインがない場合は IP アドレスを指定するなど)
 +
 +==== Community Edition の場合 ====
 <code> <code>
 # GitLab パッケージをリポジトリに追加 # GitLab パッケージをリポジトリに追加
行 132: 行 133:
 </code> </code>
  
-=== Enterprise Edition の場合 ===+==== Enterprise Edition の場合 ====
 <code> <code>
 # GitLab パッケージをリポジトリに追加 # GitLab パッケージをリポジトリに追加
行 141: 行 142:
 </code> </code>
  
-=== インストールに成功したら確認 ===+==== インストールに成功したら確認 ====
 <code> <code>
 # インストールされたバージョンを確認 # インストールされたバージョンを確認
 $ yum list installed | grep gitlab $ yum list installed | grep gitlab
-gitlab-ce.x86_64             12.9.2-ce.0.el6       @gitlab_gitlab-ce+gitlab-ce.x86_64         12.9.2-ce.0.el6    @gitlab_gitlab-ce
  
 # ストレージの空き容量を確認 # ストレージの空き容量を確認
行 153: 行 154:
 </code> </code>
 ブラウザでサイトにアクセスできるか確認する。\\ ブラウザでサイトにアクセスできるか確認する。\\
-http://gitlab.example.com \\ 
 ブラウザキャッシュでサイトが見れないときがあるので、サイト表示されなくても Chrome のシークレットモードで開くと見れるときがある。 ブラウザキャッシュでサイトが見れないときがあるので、サイト表示されなくても Chrome のシークレットモードで開くと見れるときがある。
 +
 +初回アクセス時は管理者アカウント(root)のパスワード設定画面が表示されるので、新しいパスワードを設定します。\\
 +これで【root / 設定したパスワード】でログインできるようになります。
 +==== URL の変更 ====
 +あとからドメインを取得した場合や、URL の設定を間違えていた場合など、URL を変更したい場合は以下の手順で変更できます。
 +<code>
 +# オプションで URL 変更
 +$ sudoedit /etc/gitlab/gitlab.rb
 +
 +external_url="http://example.net/"
 +
 +# 変更内容反映
 +$ sudo gitlab-ctl reconfigure
 +</code>
 +
 +===== SSL証明書(Let's Encrypt)の設定 =====
 +Omnibus-GitLab は Let's Encrypt をサポートしているので、簡単に SSL証明書を導入し https を使用することができます。\\
 +https://docs.gitlab.com/omnibus/settings/ssl.html
 +<code>
 +$ sudoedit /etc/gitlab/gitlab.rb
 +
 +external_url="http://gitlab.example.com"
 +
 +letsencrypt['enable'] = true
 +letsencrypt['contact_emails'] = ['自分のメールアドレス']
 +
 +// 4日毎の午前3時0分に更新を試みる
 +letsencrypt['auto_renew_hour'] = 3
 +letsencrypt['auto_renew_minute'] = 0
 +letsencrypt['auto_renew_day_of_month'] = "*/4"
 +
 +# 反映
 +sudo gitlab-ctl reconfigure
 +</code>
 +これだけで OK です。\\
 +あとは https でアクセスできるか確認します。
 +
 +その他の設定などについては [[サーバソフトウェア:gitlab|Gitlab]] にて。
  
サーバ/aws/サーバ構築手順/amazon_linux_2_に_gitlab_community_edition_gitlab-ce_をインストール.txt · 最終更新: 2020/07/10 18:16 by humolife