モーダルを閉じる工作HardwareHub ロゴ画像

工作HardwareHubは、ロボット工作や電子工作に関する情報やモノが行き交うコミュニティサイトです。さらに詳しく

利用規約プライバシーポリシー に同意したうえでログインしてください。

GitLab インストール手順 (CentOS 6)

モーダルを閉じる

ステッカーを選択してください

お支払い手続きへ
モーダルを閉じる

お支払い内容をご確認ください

購入商品
」ステッカーの表示権
メッセージ
料金
(税込)
決済方法
GooglePayマーク
決済プラットフォーム
確認事項

利用規約をご確認のうえお支払いください

※カード情報はGoogleアカウント内に保存されます。本サイトやStripeには保存されません

※記事の執筆者は購入者のユーザー名を知ることができます

※購入後のキャンセルはできません

作成日作成日
2017/09/17
最終更新最終更新
2021/02/06
記事区分記事区分
一般公開

目次

    仕事では Kubernetesの運用を中心に、GitLabとの連携も担当するインフラエンジニア。

    Git を用いたプロジェクト開発を複数人で行う場合、サーバーでレポジトリ管理を行えると便利です。何らかの事情で GitHub や Bitbucket を利用できない場合は、サーバーを構築して GitLab をインストールします。ここでは特に CentOS 6 の場合についてインストール手順をまとめます。

    コマンドを実行するサーバーの用意

    個人的な検証用途であれば Vagrant や VirtualBox を用いてサーバーを構築します。メモリが少ないとインストールに時間がかかったりします。

    We also strongly recommend at least 4GB of free memory to run GitLab.
    https://about.gitlab.com/installation/

    インストールコマンド

    GitLab Installation に記載の手順に従います。GitLab 専用の yum レポジトリをインストールするためのシェルスクリプトを実行します。

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

    シェルスクリプトの内部では OS の判定などが行われます。CentOS は Red Hat Enterprise Linuxとの完全互換を目指したフリーのディストリビューションであり、以下のファイルで判定されます。

    $ cat /etc/redhat-release 
    CentOS release 6.6 (Final)
    

    インストールされた yum レポジトリの設定ファイルは以下の場所にあります。

    ls /etc/yum.repos.d/gitlab_gitlab-ce.repo
    

    gitlab-ce をインストールします。

    sudo yum info gitlab-ce
    sudo yum install gitlab-ce
    

    /opt/gitlab/ 以下に nginx, chef, rails, psql, redis 等のファイルが設置されたことが確認できます。

    rpm -ql gitlab-ce | less
    

    以下のコマンドで chef を実行して上記ソフトウェアをインストールします。

    sudo gitlab-ctl reconfigure
    

    前述のとおりメモリが少ないと以下のように 30 分もの時間がかかります。

    ...
    Running handlers:
    Running handlers complete
    Chef Client finished, 362/511 resources updated in 30 minutes 17 seconds
    gitlab Reconfigured!
    
    [vagrant@localhost ~]$ free -m
                 total       used       free     shared    buffers     cached
    Mem:           458        442         15          8          1         55
    -/+ buffers/cache:        385         72
    Swap:          927        601        326
    

    ポート番号について

    ポート番号の使用状況を netstatで調べると以下のようになっています。

    sudo netstat -ltnp
    
    • 22 → ssh
    • 25 → postfix
    • 80 → nginx
    • 8080 → unicorn

    ドキュメントにも記載のとおり、redispsql は UNIX ドメインソケットで通信します。OS ユーザーの gitlab-redis 権限で sudo してインストール済みの redis-cli を用いて接続するには以下のようなコマンドを実行します。

    sudo -u gitlab-redis /opt/gitlab/embedded/bin/redis-cli -s /var/opt/gitlab/redis/redis.socket
    

    同様に psql については以下のようになります。gitlabhq_production データベースにソケットファイル経由で接続します。

    sudo -u gitlab-psql /opt/gitlab/embedded/bin/psql -h /var/opt/gitlab/postgresql -d gitlabhq_production
    

    ドキュメントを参照すると、以下のコマンドでも接続できることが記載されています。

    sudo gitlab-rails dbconsole
    

    psql 簡易チートシート

    接続

    psql -h mydw.xxxx.us-east-1.redshift.amazonaws.com -p 5439 mydw username
    

    データベース一覧 show databases

    \l
    

    ユーザ一覧 select user,host from mysql.user

    \du
    

    postgres データベースへの切り換え use

    \c postgres
    

    テーブル一覧 show tables

    \dt
    

    テーブル情報 desc

    \d emails
    

    現在のコネクションに関する情報を表示

    \conninfo
    

    終了 quit

    \q
    

    ページャを無効化する

    \pset pager
    

    MySQL の \G のように縦に表示する

    \x
    

    コマンドラインから実行

    PGPASSWORD=xxxxxxxxxx psql -h mydw.xxxx.us-east-1.redshift.amazonaws.com -p 5439 mydw username -c "\dt"
    

    PostgreSQL 発行された SQL のログ出力 (デバッグ用途)

    postgresql.conf の場所を探します。

    ps auxw | grep postgres
    

    ログ出力の設定を追加します。

    sudo vim /etc/postgresql/10/main/postgresql.conf

    logging_collector = on
    log_directory = '/tmp/psql_log'
    log_statement = 'all'
    

    サービスを再起動します。

    sudo systemctl restart postgresql.service
    

    ログインおよび設定

    初回ログイン

    初期パスワードを求められます。ユーザー名は root です。ログイン後に他の名前に変更できます。

    設定変更

    インストール時に表示される以下のメッセージのとおり /etc/gitlab/gitlab.rb を編集して再度 reconfigure すると設定を変更できます。公式ドキュメントを参考に設定します。

    gitlab: GitLab should be reachable at http://localhost
    gitlab: Otherwise configure GitLab for your system by editing /etc/gitlab/gitlab.rb file
    gitlab: And running reconfigure again.
    gitlab: 
    gitlab: For a comprehensive list of configuration options please see the Omnibus GitLab readme
    gitlab: https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/README.md
    
    Likeボタン(off)0
    詳細設定を開く/閉じる
    アカウント プロフィール画像

    仕事では Kubernetesの運用を中心に、GitLabとの連携も担当するインフラエンジニア。

    記事の執筆者にステッカーを贈る

    有益な情報に対するお礼として、またはコメント欄における質問への返答に対するお礼として、 記事の読者は、執筆者に有料のステッカーを贈ることができます。

    >>さらに詳しくステッカーを贈る
    ステッカーを贈る コンセプト画像

    Feedbacks

    Feedbacks コンセプト画像

      ログインするとコメントを投稿できます。

      ログインする

      関連記事