Я попытался создать контейнер GitLab с Docker Настольным компьютером, установленным на Windows 10, поэтому я извлекаю изображение из концентратора
> docker pull gitlab/gitlab-ce
Затем я попытался создать соответствующий контейнер, как показано в документах
> docker run -d --hostname gitlab.joker.com -p 443:443 -p 80:80 -p 22:22 --name gitlab -v z:\Containers-data\gitlab\config:/etc/gitlab -v z:\Containers-data\gitlab\logs:/var/log/gitlab -v z:\Containers-data\gitlab\data:/var/opt/gitlab gitlab/gitlab-ce:latest
Но я получил несколько ошибок. Это происходит только тогда, когда я использую опции --volume
. Когда я опускаю все параметры -v
, контейнер GitLab работает отлично, но мне нужно использовать параметры --volume
для сохранения данных GitLab на моем общем ресурсе.
Это журнал контейнера. Обратите внимание на проблемы.
> docker logs -f gitlab
Thank you for using GitLab Docker Image!
Current version: gitlab-ce=8.11.5-ce.0
[...]
Configuring GitLab...
* Moving existing certificates found in /opt/gitlab/embedded/ssl/certs
* Symlinking existing certificates found in /etc/gitlab/trusted-certs
================================================================================
**Error executing action `run` on resource 'execute[create gitlab database user]'**
================================================================================
Mixlib::ShellOut::ShellCommandFailed
------------------------------------
Expected process to exit with [0], but received '2'
---- Begin output of /opt/gitlab/bin/gitlab-psql -d template1 -c "CREATE USER gitlab" ----
STDOUT:
STDERR: psql: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/opt/gitlab/postgresql/.s.PGSQL.5432"?
---- End output of /opt/gitlab/bin/gitlab-psql -d template1 -c "CREATE USER gitlab" ----
Ran /opt/gitlab/bin/gitlab-psql -d template1 -c "CREATE USER gitlab" returned 2
Resource Declaration:
---------------------
# In /opt/gitlab/embedded/cookbooks/cache/cookbooks/gitlab/recipes/postgresql.rb
execute("create gitlab database user") do
action [:run]
retries 20
retry_delay 2
default_guard_interpreter :execute
command "/opt/gitlab/bin/gitlab-psql -d template1 -c \"CREATE USER gitlab\""
backup 5
returns 0
user "gitlab-psql"
declared_type :execute
cookbook_name "gitlab"
recipe_name "postgresql"
not_if { #code block }
end
Platform:
---------
x86_64-linux
================================================================================
**Error executing action `run` on resource 'execute[clear the gitlab-rails cache]'**
================================================================================
Mixlib::ShellOut::ShellCommandFailed
------------------------------------
Expected process to exit with [0], but received '1'
---- Begin output of /opt/gitlab/bin/gitlab-rake cache:clear ----
STDOUT:
STDERR: rake aborted!
[...]
Кажется, проблема в контейнере, но я проверил общий ресурс, и тома были правильно созданы.
Как я могу сделать это правильно?