Running Gitlab Docker

2019-03-11 09:14发布

问题:

I'm following these instructions: http://doc.gitlab.com/omnibus/docker

However http://localhost is says Webpage is not available.

Here are the commands that I'm running (Ubuntu 14.04 LTS):

    ole@MKI:~$ docker version
    Client:
     Version:      1.9.1
     API version:  1.21
     Go version:   go1.4.3
     Git commit:   a34a1d5
     Built:        Fri Nov 20 17:56:04 UTC 2015
     OS/Arch:      linux/amd64

    Server:
     Version:      1.9.1
     API version:  1.21
     Go version:   go1.4.3
     Git commit:   a34a1d5
     Built:        Fri Nov 20 17:56:04 UTC 2015
     OS/Arch:      linux/amd64

    ole@MKI:~$ sudo docker run --detach \
    >     --hostname gitlab.example.com \
    >     --publish 443:443 --publish 80:80 --publish 22:22 \
    >     --name gitlab \
    >     --restart always \
    >     --volume /srv/gitlab/config:/etc/gitlab \
    >     --volume /srv/gitlab/logs:/var/log/gitlab \
    >     --volume /srv/gitlab/data:/var/opt/gitlab \
    >     gitlab/gitlab-ce:latest
    613d4d2d612f977d3d25746a169d9209acb864e57c5184083dccd02b1e4a157c

    ole@MKI:~$ docker ps
    CONTAINER ID        IMAGE                     COMMAND             CREATED             STATUS              PORTS                                                          NAMES
    613d4d2d612f        gitlab/gitlab-ce:latest   "/assets/wrapper"   4 seconds ago       Up 2 seconds        0.0.0.0:22->22/tcp, 0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp   gitlab

If I rerun docker ps I get this:

    CONTAINER ID        IMAGE                     COMMAND             CREATED             STATUS                              PORTS                                                          NAMES
    613d4d2d612f        gitlab/gitlab-ce:latest   "/assets/wrapper"   9 minutes ago       Restarting (1) About a minute ago   0.0.0.0:22->22/tcp, 0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp   gitlab

It says Restarting about a minute ago... ... does that mean there is something wrong internally?

[EDIT - ADDING LOGS]

  ole@MKI:~$ sudo mkdir -p /var/log/gitlab/reconfigure

  ole@MKI:~$ sudo docker run --detach \
  >     --hostname gitlab.example.com \
  >     --publish 443:443 --publish 80:80 --publish 22:22 \
  >     --name gitlab \
  >     --restart always \
  >     --volume /srv/gitlab/config:/etc/gitlab \
  >     --volume /srv/gitlab/logs:/var/log/gitlab \
  >     --volume /srv/gitlab/data:/var/opt/gitlab \
  >     gitlab/gitlab-ce:latest
  f4dee0a603bdc95594e8a77d51762f2d78d44ec077f2d57645e651ed628a4d6b

  ole@MKI:~$ docker logs
  docker: "logs" requires 1 argument.
  See 'docker logs --help'.

  Usage:    docker logs [OPTIONS] CONTAINER

  Fetch the logs of a container

  ole@MKI:~$ docker logs gitlab
  Thank you for using GitLab Docker Image!
  Current version: gitlab-ce=8.5.0-ce.1

  Configure GitLab for your system by editing /etc/gitlab/gitlab.rb file
  And restart this container to reload settings.
  To do it use docker exec:

    docker exec -it gitlab vim /etc/gitlab/gitlab.rb
    docker restart gitlab

  For a comprehensive list of configuration options please see the Omnibus GitLab readme
  https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/README.md

  If this container fails to start due to permission problems try to fix it by executing:

    docker exec -it gitlab update-permissions
    docker restart gitlab

  Preparing services...
  Starting services...
  Configuring GitLab...
  /opt/gitlab/embedded/bin/runsvdir-start: line 34: ulimit: max user processes: cannot modify limit: Operation not permitted
  /opt/gitlab/embedded/bin/runsvdir-start: line 37: /proc/sys/fs/file-max: Read-only file system
  [2016-02-23T01:16:47+00:00] FATAL: Failed to open or create log file at /var/log/gitlab/reconfigure/1456190207.log: Errno::ENOENT (No such file or directory @ rb_sysopen - /var/log/gitlab/reconfigure/1456190207.log)
  [2016-02-23T01:16:47+00:00] FATAL: Aborting due to invalid 'log_location' configuration
  Thank you for using GitLab Docker Image!
  Current version: gitlab-ce=8.5.0-ce.1

  Configure GitLab for your system by editing /etc/gitlab/gitlab.rb file
  And restart this container to reload settings.
  To do it use docker exec:

    docker exec -it gitlab vim /etc/gitlab/gitlab.rb
    docker restart gitlab

  For a comprehensive list of configuration options please see the Omnibus GitLab readme
  https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/README.md

  If this container fails to start due to permission problems try to fix it by executing:

    docker exec -it gitlab update-permissions
    docker restart gitlab

  Preparing services...
  Starting services...
  Configuring GitLab...
  /opt/gitlab/embedded/bin/runsvdir-start: line 34: ulimit: max user processes: cannot modify limit: Operation not permitted
  /opt/gitlab/embedded/bin/runsvdir-start: line 37: /proc/sys/fs/file-max: Read-only file system
  [2016-02-23T01:16:51+00:00] FATAL: Failed to open or create log file at /var/log/gitlab/reconfigure/1456190211.log: Errno::ENOENT (No such file or directory @ rb_sysopen - /var/log/gitlab/reconfigure/1456190211.log)
  [2016-02-23T01:16:51+00:00] FATAL: Aborting due to invalid 'log_location' configuration
  Thank you for using GitLab Docker Image!
  Current version: gitlab-ce=8.5.0-ce.1

  Configure GitLab for your system by editing /etc/gitlab/gitlab.rb file
  And restart this container to reload settings.
  To do it use docker exec:

    docker exec -it gitlab vim /etc/gitlab/gitlab.rb
    docker restart gitlab

  For a comprehensive list of configuration options please see the Omnibus GitLab readme
  https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/README.md

  If this container fails to start due to permission problems try to fix it by executing:

    docker exec -it gitlab update-permissions
    docker restart gitlab

  Preparing services...
  Starting services...
  Configuring GitLab...
  /opt/gitlab/embedded/bin/runsvdir-start: line 34: ulimit: max user processes: cannot modify limit: Operation not permitted
  /opt/gitlab/embedded/bin/runsvdir-start: line 37: /proc/sys/fs/file-max: Read-only file system
  [2016-02-23T01:16:56+00:00] FATAL: Failed to open or create log file at /var/log/gitlab/reconfigure/1456190216.log: Errno::ENOENT (No such file or directory @ rb_sysopen - /var/log/gitlab/reconfigure/1456190216.log)
  [2016-02-23T01:16:56+00:00] FATAL: Aborting due to invalid 'log_location' configuration
  Thank you for using GitLab Docker Image!
  Current version: gitlab-ce=8.5.0-ce.1

  Configure GitLab for your system by editing /etc/gitlab/gitlab.rb file
  And restart this container to reload settings.
  To do it use docker exec:

    docker exec -it gitlab vim /etc/gitlab/gitlab.rb
    docker restart gitlab

  For a comprehensive list of configuration options please see the Omnibus GitLab readme
  https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/README.md

  If this container fails to start due to permission problems try to fix it by executing:

    docker exec -it gitlab update-permissions
    docker restart gitlab

  Preparing services...
  Starting services...
  Configuring GitLab...
  /opt/gitlab/embedded/bin/runsvdir-start: line 34: ulimit: max user processes: cannot modify limit: Operation not permitted
  /opt/gitlab/embedded/bin/runsvdir-start: line 37: /proc/sys/fs/file-max: Read-only file system
  [2016-02-23T01:17:02+00:00] FATAL: Failed to open or create log file at /var/log/gitlab/reconfigure/1456190222.log: Errno::ENOENT (No such file or directory @ rb_sysopen - /var/log/gitlab/reconfigure/1456190222.log)
  [2016-02-23T01:17:02+00:00] FATAL: Aborting due to invalid 'log_location' configuration
  Thank you for using GitLab Docker Image!
  Current version: gitlab-ce=8.5.0-ce.1

  Configure GitLab for your system by editing /etc/gitlab/gitlab.rb file
  And restart this container to reload settings.
  To do it use docker exec:

    docker exec -it gitlab vim /etc/gitlab/gitlab.rb
    docker restart gitlab

  For a comprehensive list of configuration options please see the Omnibus GitLab readme
  https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/README.md

  If this container fails to start due to permission problems try to fix it by executing:

    docker exec -it gitlab update-permissions
    docker restart gitlab


  ole@MKI:~$ docker ps
  CONTAINER ID        IMAGE                     COMMAND             CREATED             STATUS                         PORTS                                                          NAMES
  f4dee0a603bd        gitlab/gitlab-ce:latest   "/assets/wrapper"   39 seconds ago      Restarting (1) 4 seconds ago   0.0.0.0:22->22/tcp, 0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp   gitlab

It still does not boot, even after creating /var/log/gitlab/reconfigure manually.

回答1:

Modifying the docker command to the following resolved the issue for me:

sudo docker run -i \
    --hostname ubuntu \
    --publish 443:443 --publish 80:80 --publish 2222:22 \
    --name gitlab \
    --restart always \
    --volume /srv/gitlab/config:/etc/gitlab \
    --volume /srv/gitlab/logs:/var/log/gitlab \
    --volume /srv/gitlab/data:/var/opt/gitlab \
    --volume /srv/gitlab/logs/reconfigure:/var/log/gitlab/reconfigure \
    gitlab/gitlab-ce:latest

Note I used -i so I could watch it start up, but you can set it back to --detach.



回答2:

I had this issue too and solved it by create a folder that was missing. Should have been made by the scripts themselves.

/srv/gitlab/logs/reconfigure



回答3:

Do what the log says:

docker exec -it gitlab update-permissions
docker restart gitlab


回答4:

Not using the latest gitlab/gitlab-ce:latest image worked for me.

But gitlab/gitlab-ce:9.5.4-ce.0 worked for me.

I struggled with the somewhat same issue. It kept restarting. The logs where talking about file permissions and also compile errors.

Here is my start setting:

#sudo docker run -i \
sudo docker run --detach \
  --env GITLAB_OMNIBUS_CONFIG="external_url 'http://192.168.56.101/'; gitlab_rails['lfs_enabled'] = true;" \
  --hostname ubse-gitlab \
  --publish 443:443 --publish 80:80 --publish 23:22 \
  --name gitlab \
  --restart always \
  --volume /srv/gitlab/config:/etc/gitlab \
  --volume /srv/gitlab/logs:/var/log/gitlab \
  --volume /srv/gitlab/data:/var/opt/gitlab \
  --volume /srv/gitlab/logs/reconfigure:/var/log/gitlab/reconfigure \
  gitlab/gitlab-ce:9.5.4-ce.0


标签: docker gitlab