Источники

Удаление

1
2
3
docker stop gitlab ;\
docker rm gitlab ;\
docker rmi gitlab/gitlab-ce

Установка

Создание директории

1
mkdir /dconf/gitlab

Запуск контейнера

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
docker run -it \
  --name="gitlab" \
  --hostname gitlab.example.com \
  -p 8929:8929 \
  -p 8980:80 \
  -p 8943:443 \
  -p 2289:22 \
  -v /dconf/gitlab/config:/etc/gitlab \
  -v /dconf/gitlab/data:/var/opt/gitlab \
  -v /dconf/gitlab/logs:/var/log/gitlab \
  --shm-size 256m \
  -e TZ=Europe/Moscow \
  --restart unless-stopped \
gitlab/gitlab-ce

gitlab-ce означает Community Edition версию, если нужна Enterprise Edition заменить на gitlab-еe

Пароль для root пользователя генерируется автоматически. Он лежит в /etc/gitlab/initial_root_password.

1
docker exec -it gitlab grep 'Password:' /etc/gitlab/initial_root_password

Логинимся и меняем пароль в настройках профиля.

Оптимизация оперативной памяти

Со стандартными настроками GitLab довольно прожорливый в отношениях памяти. Для малых проектов имеет смысл упростить конфиг следующим образом.

1
2
docker stop gitlab ;\
nano /dconf/gitlab/config/gitlab.rb

Добавляем в конфиг (или раскомментируем подходящие строки).

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
puma['worker_processes'] = 0

sidekiq['max_concurrency'] = 2

prometheus_monitoring['enable'] = false

gitlab_rails['env'] = {
  'MALLOC_CONF' => 'dirty_decay_ms:1000,muzzy_decay_ms:1000'
}

postgresql['shared_buffers'] = "256MB"

Подробнее можно почитать на gitlab.com.

Запускаем контейнер вновь.

1
docker start gitlab