Dockerを使用してGitlabを素早くデプロイする方法

Dockerを使用してGitlabを素早くデプロイする方法

1. GitLabイメージをダウンロードする

docker pull gitlab/gitlab-ce

2. GitLabインスタンスを実行する

GITLAB_HOME=`pwd`/data/gitlab
docker run -d \
  --hostname gitlab \
  --publish 8443:443 --publish 80:80 --publish 2222:22 \
  --name gitlab \
  --常に再起動\
  --volume $GITLAB_HOME/config:/etc/gitlab \
  --volume $GITLAB_HOME/logs:/var/log/gitlab \
  --volume $GITLAB_HOME/data:/var/opt/gitlab \
  gitlab/gitlab-ce

3. GitLabインスタンスを設定する

3.1 電子メールの設定:

docker exec -t -i gitlab vim /etc/gitlab/gitlab.rb

次のメールボックスの構成では、NetEase 163 メールボックスを例に挙げています。

gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.163.com"
gitlab_rails['smtp_port'] = 25
gitlab_rails['smtp_user_name'] = "[email protected]"
gitlab_rails['smtp_password'] = "xxxxパスワード"
gitlab_rails['smtp_domain'] = "163.com"
gitlab_rails['smtp_authentication'] = "ログイン"
gitlab_rails['smtp_enable_starttls_auto'] = false
gitlab_rails['smtp_openssl_verify_mode'] = "ピア"

gitlab_rails['gitlab_email_from'] = "[email protected]"
ユーザー["git_user_email"] = "[email protected]"

上記の [email protected] はユーザー名、つまりメールアドレスを表しており、xxxxpassword はメールアドレスのログインパスワードではなく、NetEase メールのクライアント認証パスワードであることに注意してください。NetEase メールの Web ページの [設定] - [POP3/SMTP/IMAP] - [クライアント認証パスワード] で確認できます。

3.2 外部アクセスURLの設定

これは設定する必要があります。そうでない場合、デフォルトのURLはコンテナのホスト名になります。最初はポートマッピング80->8080が行われていたため、次のように設定されていました。

外部URL http://10.103.240.36:8080

後で、external_url はポートではなく IP またはドメイン名でのみ構成でき、そうでない場合は起動できないことがわかりました。

したがって、ポートを 80->80 に設定し、external_url を次のように設定することしかできません。

外部URL http://10.103.240.36

4. GitLabを再起動する

docker gitlab を再起動

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • docker+gitlab+gitlab-runnerの詳細なデプロイメント
  • Docker-compose ワンクリックデプロイ gitlab 中国語版の方法手順
  • Docker-compose を使用して GitLab をデプロイする方法
  • DockerでGitlabをインストールする方法
  • Dockerを使用してgitlabを構築する詳細な説明
  • Dockerを使用してgitlabコミュニティの中国語版を構築する詳細なプロセスを教えます

<<:  Innodb で MySQL の 2T テーブルをすばやく削除する方法の例

>>:  要素のel-tree複数選択ツリー(チェックボックス)親子ノードの関連付けが関連付けられていません

推薦する

Mysql sql スロークエリ監視スクリプトコード例

1. my.cnfを変更する #全体的な効果としては、グローバルがオンになっている場合はテーブルとロ...

MySQL REVOKE でユーザー権限を削除する

MySQL では、REVOKE ステートメントを使用してユーザーの特定の権限を削除できます (ユーザ...

JavaScript のスプレッド演算子とレスト演算子の違いの詳細な説明

目次レスト演算子とは何ですか? JavaScript 関数では REST 演算子はどのように機能しま...

mysql 簡単な操作例を表示

この記事では、例を挙げて mysql show 操作について説明します。ご参考までに、詳細は以下の通...

Dockerはbusyboxを使用してベースイメージを作成します

Docker イメージの最初の行は FROM alpine などのイメージで始まりますが、最初のベー...

uniappのグローバル変数実装の詳細な説明

序文この記事では、uniapp グローバル変数の実装方法をいくつかまとめています。詳細な知識は、uV...

Nginx で何ができるかの包括的な分析

序文この記事は、サードパーティのモジュールをロードせずにNginxで処理できることのみに焦点を当てて...

友達やグループを見つけるためのJavaScriptのLayim

現在、layuiの関係者はlayim友達検索ページの構造とスタイルを提供していません。私は個人的に非...

マークアップ言語 - アンカー

前: マークアップ言語 - フレーズ要素 オリジナルソース 第 7 章 アンカーHTML のリンクの...

MySQL の InnoDB ストレージ ファイルの詳細な説明

物理的に言えば、InnoDB テーブルは、共有テーブルスペース ファイル (ibdata1)、排他テ...

JavaScript タイマーの詳細

目次1. 簡単な紹介2. 間隔を設定する2.1 説明2.2 パラメータ2.3 戻り値2.4 使用法3...

MYSQL大規模書き込み問題の最適化の詳細な説明

概要: MySQL のパフォーマンス最適化について話すとき、誰もがクエリ パフォーマンスを向上させる...

Vue Element UIの使用時に遭遇した問題をまとめる

目次1. DateTimePickerの日付選択範囲は現在時刻とそれ以前です2. DateTimeP...

MySQL可視化ツールNavicatへの接続方法

Navicatをインストールした後次のエラーが発生する場合があります: Client does no...

パゴダパネルとドッカーを使用して Gogs をインストールするプロセス全体

目次1 Baota Software StoreにDockerをインストールする2 ゴグスイメージを...