edo1z blog

プログラミングなどに関するブログです

Ubuntu16.04にGitLabを入れる

Ubuntu 16.04にGitlabを入れていきたいと思います。

Gitlabのインストール

Gitlabのサイトに、OS毎のインストール方法が書いてありました。

$ sudo apt-get install curl openssh-server ca-certificates postfix
$ curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
$ sudo apt-get install gitlab-ce
$ sudo gitlab-ctl reconfigure

ポート開ける

80ポートを開けます。

$ sudo ufw allow 80

ポートの衝突を回避する

ブラウザで見てもデフォルトのnginxの画面になる。既にnginx入れているのですが、これとは別にnginxを入れてるみたいでポートが衝突してるらいし。 参考:Ubuntu 14.04 に GitLabをインストールした

上記サイトのとおり、衝突してた。/etc/gitlab/gitlab.rbの下記に、変更したいポートを入れたら出来た。あとは、ufwでポートを開ける必要がある。

nginx['listen_port'] = nil

ブラウザでアクセスしたらGitlabのログイン画面が表示された。パスワード変更してrootでログインできた。

gitユーザでssh接続できるようにする

$ sudo vi /etc/ssh/sshd_config

AllowUsersにgitを追加します。

$ sudo service ssh restart

sshのポートを変えている場合は、gitlab.rbの下記を修正します。

gitlab_rails['gitlab_shell_ssh_port'] = 変更したポート

あとは、ローカルでキーを作成して、gitlabに登録して、.ssh/configを下記のような感じで修正します。

Host hoge.com
        HostName hoge.com
        User git
        IdentityFile C:\Users\hoge\.ssh\hoge_rsa
        Port 12345

メール送信設定

今回はgmailを新たに登録して、設定してみました。gmail登録後に、安全性の低いアプリに許可というのを設定する必要があります。あとは、gitlab.rbを下記のように設定します。

 21  gitlab_rails['time_zone'] = 'Asia/Tokyo'
 22  gitlab_rails['gitlab_email_enabled'] = true
 23  gitlab_rails['gitlab_email_from'] = 'hoge@gmail.com'
 24  gitlab_rails['gitlab_email_display_name'] = 'Hoge'
 25  gitlab_rails['gitlab_email_reply_to'] = 'hoge@gmail.com'

332  gitlab_rails['smtp_enable'] = true
333  gitlab_rails['smtp_address'] = "smtp.gmail.com"
334  gitlab_rails['smtp_port'] = 587
335  gitlab_rails['smtp_user_name'] = "hoge@gmail.com"
336  gitlab_rails['smtp_password'] = "GmailのPASSWORD"
337  gitlab_rails['smtp_domain'] = "smtp.gmail.com"
338  gitlab_rails['smtp_authentication'] = "login"
339  gitlab_rails['smtp_enable_starttls_auto'] = true
340  gitlab_rails['smtp_tls'] = false
341  gitlab_rails['smtp_openssl_verify_mode'] = 'peer'

reconfigure

$ sudo gitlab-ctl reconfigure