Docker-compose ワンクリックデプロイ gitlab 中国語版の方法手順

Docker-compose ワンクリックデプロイ gitlab 中国語版の方法手順

1. GitLabの紹介

Gitlab 公式アドレス: https://about.gitlab.com/

GitLab は、Ruby on Rails を使用して、Web インターフェースを通じてパブリック プロジェクトまたはプライベート プロジェクトにアクセスできる自己ホスト型 Git プロジェクト リポジトリを実装するオープン ソースのバージョン管理システムです。 Github と同様の機能があり、ソースコードを閲覧したり、欠陥やコメントを管理したりできます。リポジトリへのチーム アクセスを管理でき、コミットされたバージョンを簡単に参照でき、ファイル履歴ライブラリが提供されます。チームメンバーは、組み込みのシンプルなチャット プログラム (Wall) を使用して通信できます。また、コード スニペット収集機能も提供しており、コードの再利用が容易になり、将来必要になったときに簡単に取得できるようになります。

Gitlab は、コード管理と開発者間のチームコラボレーションを非常にうまく実装できるコード リポジトリです。現在、最も広く使用されているアプリケーションは、継続的インテグレーションとデプロイメントを実現するために Jenkins と GitLab を使用することです。公式に推奨されている構成は、2 コア CPU と 4G メモリです。これは、gitlab の全体的な操作に、nginx、postgresql、prometheus、redis などの複数のプロセスが含まれるためです。

この目的のために、ここでは docker-compose を使用して、gitlab の中国コミュニティ バージョンを 1 台のマシンにデプロイし、誰もが gitlab の強力な機能をよりよく体験できるようにします。残りのナンセンスについてはあまり言及しません。とにかく作業を開始してください。 !

2. Dockerをインストールする

1. Docker依存パッケージをインストールする

[root@gitlab ~]# yum -y yum-utils デバイスマッパー永続データ lvm2 をインストールします

2. Docker-ceイメージソースを追加してインストールする

1.1) 海外の情報源(海外で働く友人に適している)

[root@gitlab ~]# yum-config-manager \
--リポジトリを追加\
https://download.docker.com/linux/centos/docker-ce.repo

1.2) 国内アリババクラウドソース(中国で働く友人に最適)

[root@gitlab ~]# yum-config-manager \
--リポジトリを追加\
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

2) サーバーのパッケージ情報をローカルコンピュータにダウンロードしてキャッシュする

[root@gitlab ~]# yum makecache fast

3) Docker CEをインストールする

[root@gitlab ~]# yum -y インストール docker-ce

4) ダウンロードDockerイメージアクセラレータを構成する

海外アクセラレータ:

[root@gitlab ~]# curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://bc437cce.m.daocloud.io

国内アリババクラウドアクセラレータ:

:vim /etc/docker/daemon.json を実行します。
#以下を入力して保存します。
{
「レジストリミラー」: [https://9w1hl6qt.mirror.aliyuncs.com]
}

5) systemctlをリロードし、dockerを自動的に起動します。

[root@gitlab ~]# systemctl daemon-reload
[root@gitlab ~]# systemctl dockerを起動します
[root@gitlab ~]# systemctl docker を有効にする
[root@gitlab ~]# docker --version 
Docker バージョン 18.09.0、ビルド 4d60db4

3. Docker-composeをインストールする

Docker-composeバイナリをダウンロードし、実行権限を追加します。

[root@gitlab ~]# curl -L https://github.com/docker/compose/releases/download/1.23.2/docker-compose-`uname -s-uname -m` -o /usr/local/bin/docker-compose
% 合計 % 受信 % 転送 平均速度 時間 時間 時間 現在
ダウンロード アップロード 合計使用時間 残り 速度
100 617 0 617 0 0 590 0 --:--:-- 0:00:01 --:--:-- 590
100 11.2M 100 11.2M 0 0 498k 0 0:00:23 0:00:23 --:--:-- 737k
[root@gitlab ~]# chmod +x /usr/local/bin/docker-compose
[root@gitlab ~]# docker-compose --version
docker-compose バージョン 1.23.2、ビルド 1110ad01

4. Gitlabをインストールする

1) docker-composeのymlファイルを編集する

[root@gitlab ~]# mkdir gitlab
[root@gitlab ~]# cd gitlab
[root@gitlab gitlab]# vim docker-compose.yml
 バージョン: '2'
 サービス:
   gitlab:
    イメージ: 'twang2218/gitlab-ce-zh:latest'
    コンテナ名: "gitlab"
    再起動: 停止しない限り
    特権: true
    ホスト名: 'gitlab'
    環境:
    TZ: 「アジア/上海」
    GITLAB_OMNIBUS_CONFIG: |
     external_url 'http://ip または nginx によって反転されたドメイン名'
     gitlab_rails['time_zone'] = 'アジア/上海'
     gitlab_rails['smtp_enable'] = true
     gitlab_rails['smtp_address'] = "smtp.163.com"
     gitlab_rails['smtp_port'] = 465
     gitlab_rails['smtp_user_name'] = "[email protected]"
     gitlab_rails['smtp_password'] = "認証コード"
     gitlab_rails['smtp_domain'] = "163.com"
     gitlab_rails['smtp_authentication'] = "ログイン"
     gitlab_rails['smtp_enable_starttls_auto'] = true
     gitlab_rails['smtp_tls'] = true
     gitlab_rails['gitlab_email_from'] = '[email protected]'
     gitlab_rails['gitlab_shell_ssh_port'] = 22
    ポート:
     - '8181:80'
     - '8443:443'
     - '22:22'
    ボリューム:
     - /opt/gitlab/config:/etc/gitlab
     - /opt/gitlab/データ:/var/opt/gitlab
     - /opt/gitlab/logs:/var/log/gitlab

ポートマッピングの手順と注意事項:

  • 公式gitlabイメージでは、コンテナポート80をホストポート8181にマッピングすることを推奨しています。
  • 公式gitlabイメージでは、コンテナポート443をホストポート8443にマッピングすることを推奨しています。
  • 公式gitlabイメージでは、コンテナポート22をホストポート22にマッピングすることを推奨しています。

⭐️最初の 2 行は同時に記述できません。空白のままにしてください。検出については、yml ファイル検出 Web サイトにアクセスしてください。

https://www.bejson.com/validators/yaml_editor/

テストが下の図のようになる場合、yml ファイルが完全に正しいことを意味します。


私の Linux サーバーでは次のようになります:

2) 関連するディレクトリを作成する

[root@gitlab gitlab]# mkdir -p /opt/gitlab/{config,data,logs}
[root@gitlab gitlab]# ls -l /opt/gitlab/
合計 0
drwxr-xr-x 2 ルート ルート 6 12月 22 12:03 config
drwxr-xr-x 2 ルート ルート 6 12月 22 12:03 データ
drwxr-xr-x 2 ルート ルート 6 12月 22 12:03 ログ

ディレクトリの説明は次のとおりです。

  • configはGitLabの設定情報を保存します
  • データストレージデータベース
  • ログ ストレージ ログ

3) gitlabイメージの中国語版を取得する

[root@gitlab gitlab]# docker pull twang2218/gitlab-ce-zh:latest
最新: twang2218/gitlab-ce-zh からプル
8ee29e426c26: プル完了
6e83b260b73b: プル完了
e26b65fd1143: プル完了
40dca07f8222: プル完了
b420ae9e10b3: プル完了
a218309dd589: プル完了
5c60fd7ba0ce: プル完了
659c2144b5a3: プル完了
8289bbac0d0e: プル完了
31bbd150e8a7: プル完了
9114e78243fa: プル完了
e242e5cd1314: プル完了
0a079dc3f92c: プル完了
f0e195b09fd2: プル完了
6e23346e2f58: プル完了
91f00659be69: プル完了
a1031bcc5b2c: プル完了
e3074327c7b1: プル完了
a917618dbe42: プル完了
ダイジェスト: sha256:62686b74c6fca5ece8ed582d03a126c5988423dd8a19ce70e9a22357ffcaf1c8
ステータス: twang2218/gitlab-ce-zh:latest の新しいイメージをダウンロードしました

[root@gitlab gitlab]# docker イメージ
リポジトリ タグ イメージ ID 作成 サイズ
twang2218/gitlab-ce-zh 最新 18da462b5ff5 4 か月前 1.61GB

4) GitLabコンテナを起動する

開始する前に、ホストマシンのポート 22 を変更する必要があります。ホストマシンがポート 22 を占有しているため、マッピングができず、コンテナの起動に失敗します。次のように変更します。
vim /etc/ssh/sshd_config

デフォルトでは、17行目を変更します: ポート2222

変更後、sshdを再起動します: systemctl restart sshd

[root@gitlab gitlab]# netstat -tulnp | grep 22
tcp 0 0 0.0.0.0:2222 0.0.0.0: LISTEN 31889/sshd
tcp6 0 0 :::2222 ::: 31889/sshd を聴く

正式リリース:

[root@gitlab gitlab]# docker-compose up -d
デフォルトドライバーでネットワーク「gitlab_default」を作成しています
Gitlab を作成しています...完了

[root@gitlab gitlab]# docker-compose ps
名前 コマンド 状態 ポート
gitlab /assets/wrapper 稼働中 (正常) 0.0.0.0:22->22/tcp、0.0.0.0:8443->443/tcp、0.0.0.0:8181->80/tcp

[root@gitlab gitlab]# docker ps -a
コンテナID イメージ コマンド 作成ステータス ポート名
814e559dc728 twang2218/gitlab-ce-zh:latest "/assets/wrapper" 5 分前 5 分前に起動 (正常) 0.0.0.0:22->22/tcp、0.0.0.0:8181->80/tcp、0.0.0.0:8443->443/tcp gitlab

5) Gitlab設定の起動

[root@gitlab gitlab]# chmod +x /etc/rc.local
[root@gitlab gitlab]# ls -l /etc/rc.local
lrwxrwxrwx 1 root root 13 12月 3 14:31 /etc/rc.local -> rc.d/rc.local
[root@gitlab gitlab]# echo "cd /root/gitlab && docker-compose up -d" >> /etc/rc.local
[root@gitlab gitlab]# tail -1 /etc/rc.local
cd /root/gitlab && docker-compose up -d

6)Gitlab管理インターフェース

アドレス: ブラウザのymlファイルの12行目にIPまたはドメイン名を入力します。

ユーザー: root

パスワード: 初回ログイン時に手動でパスワードを設定する必要があります

次の図に示すように:


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

以下もご興味があるかもしれません:
  • Clickhouse Docker クラスターの展開と構成を例を使って説明します
  • docker-compose デプロイメント PHP プロジェクト例の詳細な説明
  • Docker-compose を使用して GitLab をデプロイする方法
  • docker-compose でデプロイしたときに MySQL にアクセスできなくなる問題の簡単な分析
  • docker-compose を使用して Clickhouse をすばやくデプロイする方法のチュートリアル

<<:  Linux CentOS6.5 yum インストール mysql5.6

>>:  Vue の長いリストをすばやく読み込む方法

推薦する

Mysql ルートユーザーアカウントのパスワードをリセットする問題を解決する

問題の説明: mysqladmin.exe を使用してコマンドを実行すると、次のエラー メッセージが...

MySQLクエリ時にフィールドにデフォルト値を割り当てる方法

必要フィールドをクエリする場合、フィールドに同じ値を指定する必要があります。この値はハードコードする...

IE6 および IE7 で DIV コンテナの固定高さを使用するためのヒント

IE6 と IE7 では CSS の解釈に多くの違いがあります。今日はそのうちの 1 つである高さに...

MySQLのSeconds_Behind_Masterの詳細な説明

目次マスターの後ろの秒数オリジナルの実装最終マスタータイムスタンプマスターとのクロック差他の実行時間...

LinuxにNginxをインストールする詳細な手順

1. Nginxのインストール手順1.1 公式サイトの紹介http://nginx.org/en/d...

Linux システムのデュアル ネットワーク カード バインディング構成の実装

システムバージョン [root@ ~]# cat /etc/redhat-release CentO...

CSS3を使用してフォントカラーグラデーションを実装する

Animation.css を使うと公式サイトのフォントがだんだんと変わっていくのが分かりました。c...

Windows サービス 2016 Datacenter\Stand\Embedded アクティベーション方法 (2021)

管理者権限でcmdを実行する slmgr /ipk CB7KF-BWN84-R7R2Y-793K2-...

MySQL における 8 つの一般的な SQL 使用例

序文MySQL は、2016 年もデータベースの人気において力強い成長傾向を維持し続けました。 My...

フロントエンドHTMLスキン変更機能の実装コード

透明を含む5つの肌の色を変更するには50行のコードが必要です最初にコードをお渡ししますので、ご自身で...

Reactコンポーネントのライフサイクルの詳細な説明

目次1.ライフサイクルとは何か2. 読み込みプロセス1.コンストラクタ2. レンダリング3. コンポ...

MySQL カーディナリティ統計の簡単な分析

1. カーディナリティとは何ですか?カーディナリティとは、MySQL テーブルの列内の異なる値の数を...

MySQL で '%' を含むフィールドをクエリする方法の詳細な説明 (ESCAPE の使用法)

SQLのlike文では、例えば SELECT * FROM user WHERE username...

CSSでnグリッドレイアウトを実装する方法

一般的なアプリケーションシナリオ現在のアプリのインターフェースは基本的に同じであり、グリッドレイアウ...

MySQL の最初のインストールが成功した後にパスワードを初期化する手順

ファイルをディレクトリに解凍しますこれは解凍後のディレクトリですmy.iniファイルを入力しますダブ...