Ubuntu 18.04 LTSにGitLab Community Edition(CE)11.xをインストールする方法

GitHubがMicrosoftに買収されて以来、かなりの数の開発者が独自のコードリポジトリをgithub.comから代替の自己ホスト型ソリューションに移行することを計画しています。GitLab Community Edition(CE)が最も一般的な選択肢です。

洗練された柔軟なソリューションとして、GitLab CEはさまざまな方法で展開できますが、ここでは公式に推奨されている方法であるOmnibusパッケージのインストールのみを取り上げます。

前提条件

  • 4GB以上のメモリを備えた新しいVultr Ubuntu 18.04 LTS x64サーバーインスタンス。最大100人のユーザーにサービスを提供するには、8GB以上をお勧めします。そのIPv4アドレスがであるとし203.0.113.1ます。
  • sudoのユーザー
  • gitlab.example.com上記のインスタンスを指すドメイン。

注: 独自のサーバーインスタンスにデプロイする場合は、すべての例の値を実際の値に置き換えてください。

ステップ1:GitLab CEをホストするための基本的なタスクを実行する

SSHターミナルを起動し、Ubuntu 18.04 LTS x64サーバーインスタンスにsudoユーザーとしてログインします。

スワップパーティションを追加し、swappiness設定を微調整します

4GBのメモリを搭載したマシンにGitLab CE 11.xをデプロイする場合、スムーズに実行するために4GBのスワップパーティションをセットアップする必要があります。

sudo dd if=/dev/zero of=/swapfile count=4096 bs=1M
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo '/swapfile   none    swap    sw    0   0' | sudo tee -a /etc/fstab
free -m

注: 別のサーバーサイズを使用している場合、スワップパーティションのサイズは異なる場合があります。

システムパフォーマンスの目的で、カーネルのswappiness設定を次のような低い値に構成することをお勧めします10

echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
cat /proc/sys/vm/swappiness

catコマンドの出力はになります10

マシンのホスト名と完全修飾ドメイン名(FQDN)を設定する

次のコマンドを使用して、マシンのホスト名gitlab、およびFQDN を設定しますgitlab.example.com

sudo hostnamectl set-hostname gitlab
sudo sed -i "1 i\203.0.113.1 gitlab.example.com gitlab" /etc/hosts

結果を確認できます。

hostname
hostname -f

ファイアウォールルールを変更する

インバウンドSSH、HTTPおよびHTTPSトラフィックを許可する

sudo ufw allow OpenSSH
sudo ufw allow http
sudo ufw allow https
sudo ufw enable

システムを更新する

sudo apt update
sudo apt upgrade -y && sudo shutdown -r now

アップグレード中に、現在インストールされているバージョンのgrub構成ファイルがローカルで変更されたことが通知される場合があります。実際には変更の責任はないので、UP矢印を使用してinstall the package maintainer's versionオプションを強調表示し、を押しENTERます。

システムが稼働中になったら、同じsudoユーザーとして再度ログインして次に進みます。

ステップ2:必要な依存関係をインストールする

GitLab CEをインストールする前に、必要な依存関係をインストールする必要があります。

sudo apt install -y curl openssh-server ca-certificates

また、Postfixを使用して通知メッセージを送信する場合は、Postfixをインストールする必要があります。

sudo apt install -y postfix

インストール中に、構成画面が表示される場合があります。

  1. を押しTAB<OK>、最初の画面でボタンをハイライトし、を押しますENTER
  2. を選択してInternet Siteを押しENTERます。
  3. 以下のためにmail nameフィールド、入力サーバーのFQDN gitlab.example.comを押しENTER
  4. 他の画面が表示されたら、を押しENTERてデフォルト設定を受け入れます。

Postfixサービスを開始して有効にします。

sudo systemctl enable postfix.service
sudo systemctl start postfix.service

Postfixのファイアウォールルールを変更します。

sudo ufw allow Postfix
sudo ufw allow 'Postfix SMTPS'
sudo ufw allow 'Postfix Submission'

Postfixをインストール/etc/postfix/main.cfしたら、実際のサーバー設定に従ってメインの設定ファイルを編集してPostfixを設定する必要があります。

注: 上記の手順に加えて、SMTPポート25でのVultrのデフォルトのブロックをキャンセルするには、サポートチケットを送信する必要があります。

または、別のメッセージングソリューションを使用する場合は、GitLab CEのインストール後にPostfixのインストールをスキップして、外部SMTPサーバーを使用することを選択します。

ステップ3:GitLab APTリポジトリをセットアップしてからGitLab CEをインストールする

システムにGitLab CE APTリポジトリをセットアップします。

cd
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash

次に、GitLab CE 11.xをインストールします。

sudo EXTERNAL_URL="http://gitlab.example.com" apt install -y gitlab-ce

インストールには時間がかかる場合があります。

最後に、お気に入りのWebブラウザでをポイントしhttp://gitlab.example.com、インストールを完了するように求められたら、新しいパスワードを送信します。

今後は、次の認証情報を使用して管理者としてログインします。

  • ユーザー名: root
  • パスワード: <your-new-password>

ステップ4:Let's Encrypt SSL証明書を統合してHTTPSアクセスを有効にする

これで、サーバーインスタンスにGitLab CE 11.xが正常にインストールされ、ユーザーは既にHTTPプロトコルを使用してサイトにアクセスできます。セキュリティ上の理由から、Let's Encrypt SSL証明書を統合してGitLabサーバーへのHTTPSアクセスを有効にすることをお勧めします。

viエディターを使用してGitLab CE構成ファイルを開きます。

sudo vi /etc/gitlab/gitlab.rb

次の2行を見つけます。

external_url 'http://gitlab.example.com'
# letsencrypt['contact_emails'] = [] # This should be an array of email addresses to add as contacts

それらを適宜交換してください:

external_url 'https://gitlab.example.com'
letsencrypt['contact_emails'] = ['[email protected]']

保存して終了:

:wq!

更新された設定を使用してGitLab CEを再構成します。

sudo gitlab-ctl reconfigure

再構成にはしばらく時間がかかる場合があります。

再構成が完了すると、すべてのユーザーはGitLabサイトにアクセスするときにHTTPSプロトコルを使用する必要があります。

注: HTTPからHTTPSに切り替えた後、レガシーCookieによりGitLab 422エラーが発生する場合があります。Cookieをクリアすると、この問題が修正されます。



ヘルスケア2021における人工知能の影響

ヘルスケア2021における人工知能の影響

ヘルスケアにおけるAIは、過去数十年から大きな飛躍を遂げました。したがって、ヘルスケアにおけるAIの未来は、日々成長を続けています。

macOS Catalina 10.15.4サプリメントの更新により、解決するよりも多くの問題が発生しています

macOS Catalina 10.15.4サプリメントの更新により、解決するよりも多くの問題が発生しています

最近、Appleは問題を修正するための補足アップデートであるmacOS Catalina 10.15.4をリリースしましたが、このアップデートにより、Macマシンのブリックにつながる問題がさらに発生しているようです。詳細については、この記事をお読みください

原子力が必ずしも悪ではないことを証明する5つの例

原子力が必ずしも悪ではないことを証明する5つの例

原子力は、過去の出来事のために私たちが決して尊重しないことを常に軽蔑していますが、それは必ずしも悪ではありません。詳細については、投稿をお読みください。

AIはどのようにしてプロセス自動化を次のレベルに引き上げることができますか?

AIはどのようにしてプロセス自動化を次のレベルに引き上げることができますか?

これを読んで、人工知能が小規模企業の間でどのように人気を博しているか、そして人工知能がどのように成長し、競合他社に優位に立つ可能性を高めているかを理解してください。

ジャーナリングファイルシステムとは何ですか、そしてそれはどのように機能しますか?

ジャーナリングファイルシステムとは何ですか、そしてそれはどのように機能しますか?

私たちのコンピューターは、ジャーナリングファイルシステムと呼ばれる組織化された方法ですべてのデータを保存します。これは、検索を押すとすぐにコンピューターがファイルを検索して表示できるようにする効率的な方法です。https://wethegeek.com/?p = 94116&preview = true

ビッグデータは人工知能をどのように変えていますか?

ビッグデータは人工知能をどのように変えていますか?

ビッグデータと人工知能は流行語ですが、それらがどのように相互に関連しているか知っていますか?さて、この記事を最後まで読んで、同じことを知ってください。

LiteCartショッピングカートプラットフォームをUbuntu 16.04にインストールする方法

LiteCartショッピングカートプラットフォームをUbuntu 16.04にインストールする方法

LiteCartは、PHP、jQuery、およびHTML 5で記述された無料のオープンソースのショッピングカートプラットフォームです。シンプルで軽量、使いやすいeコマースソフトウォー

DebianでNFS共有をセットアップする

DebianでNFS共有をセットアップする

NFSはネットワークベースのファイルシステムであり、コンピューターはコンピューターネットワークを介してファイルにアクセスできます。このガイドでは、NFを介してフォルダーを公開する方法について説明します

Fedora 28にMatomo Analyticsをインストールする方法

Fedora 28にMatomo Analyticsをインストールする方法

別のシステムを使用していますか?Matomo(旧Piwik)は、Google Analyticsのオープンな代替手段であるオープンソースの分析プラットフォームです。Matomoのソースはoでホストされています

UbuntuでNginxをセットアップしてライブHLSビデオをストリーミングする

UbuntuでNginxをセットアップしてライブHLSビデオをストリーミングする

HTTPライブストリーミング(HLS)は、Apple Inc.によって実装された非常に堅牢なストリーミングビデオプロトコルです。HLSは、ファイアウォール、プロキシ、