Windows 10に GitLabをインストール
GitLabインストール
WSLにUbuntu 18.04 LTS をインストール
Windows Store から、Ubuntu 18.04 LTSをインストールします。
Ubuntu 20.04 LTS
Windows Storeでは、より新しいUbuntu 20.04 LTSが配布されていますが、GitLabの公式サイトでAll-in-one package として準備されている 18.04 LTSを選んだ方が、トラブルは少ないと思います。
現在(2020/8/9)は、GitLabでUbuntu 20.04LTS用も準備されているようです。
GitLabをインストール
公式サイトのドキュメントに従い、WSLのUbuntu 18.04 LTSに、GitLabをインストールします。
依存パッケージのインストールと設定
sudo apt-get update
sudo apt-get install -y curl openssh-server ca-certificates
メール配信の設定
今回は割愛します。
GitLabパッケージのリポジトリへの追加とインストール
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.deb.sh | sudo bash
gitlab.example.com
は、自身が公開するホスト名に置き換えます。
また、イントラ内であれば、httpでも良いと思います
sudo EXTERNAL_URL="https://gitlab.example.com" apt-get install gitlab-ee
インストールエラー
現在(2020/8/9)、下記エラーが発生していて、インストールが完了できていません。
WSL(2)が絡んだ問題だと思いますが、まだ急がないので直るまで待ちます。
Recipe: gitlab::default
* service[create a temporary unicorn service] action nothing (skipped due to action :nothing)
* service[create a temporary puma service] action nothing (skipped due to action :nothing)
* service[create a temporary actioncable service] action nothing (skipped due to action :nothing)
* service[create a temporary sidekiq service] action nothing (skipped due to action :nothing)
* service[create a temporary mailroom service] action nothing (skipped due to action :nothing)
Recipe: package::runit_sysvinit
* execute[echo 'CS:123456:respawn:/opt/gitlab/embedded/bin/runsvdir-start' >> /etc/inittab] action rungrep: /etc/inittab: No such file or directory
- execute echo 'CS:123456:respawn:/opt/gitlab/embedded/bin/runsvdir-start' >> /etc/inittab
* execute[init q] action run
[execute] Couldn't find an alternative telinit implementation to spawn.
================================================================================
Error executing action `run` on resource 'execute[init q]'
================================================================================
Mixlib::ShellOut::ShellCommandFailed
------------------------------------
Expected process to exit with [0], but received '1'
---- Begin output of init q ----
STDOUT:
STDERR: Couldn't find an alternative telinit implementation to spawn.
---- End output of init q ----
Ran init q returned 1
Resource Declaration:
---------------------
# In /opt/gitlab/embedded/cookbooks/cache/cookbooks/package/recipes/runit_sysvinit.rb
28: execute "init q" do
29: action :nothing
30: end
Compiled Resource:
------------------
# Declared in /opt/gitlab/embedded/cookbooks/cache/cookbooks/package/recipes/runit_sysvinit.rb:28:in `from_file'
execute("init q") do
action [:nothing]
default_guard_interpreter :execute
command "init q"
backup 5
declared_type :execute
cookbook_name "package"
recipe_name "runit_sysvinit"
domain nil
user nil
end
System Info:
------------
chef_version=14.14.29
platform=ubuntu
platform_version=18.04
ruby=ruby 2.6.6p146 (2020-03-31 revision 67876) [x86_64-linux]
program_name=/opt/gitlab/embedded/bin/chef-client
executable=/opt/gitlab/embedded/bin/chef-client
Recipe: gitlab::gitlab-rails
* execute[clear the gitlab-rails cache] action run (skipped due to not_if)
Running handlers:
There was an error running gitlab-ctl reconfigure:
execute[init q] (package::runit_sysvinit line 28) had an error: Mixlib::ShellOut::ShellCommandFailed: Expected process to exit with [0], but received '1'
---- Begin output of init q ----
STDOUT:
STDERR: Couldn't find an alternative telinit implementation to spawn.
---- End output of init q ----
Ran init q returned 1
Running handlers complete
Chef Client failed. 109 resources updated in 18 seconds
dpkg: error processing package gitlab-ee (--configure):
installed gitlab-ee package post-installation script subprocess returned error exit status 1
E: Sub-process /usr/bin/dpkg returned an error code (1)