GitLab CE
Присоединяйтесь к нашему Telegram-каналу, чтобы первыми узнавать о новостях, трендах и уникальных материалах по кибербезопасности!
1. Установка Docker
Убедитесь, что Docker установлен на вашем сервере:
sudo apt update
sudo apt install -y docker.io
sudo systemctl start docker
sudo systemctl enable docker
2. Развертывание GitLab CE
Запуск контейнера
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
--hostname
— доменное имя сервиса.--volume
— директории для конфигурации, логов и данных.
3. Первичная настройка
- Перейдите в браузере по адресу:
http://<IP_вашего_сервера>
. - Установите пароль для пользователя
root
.
Настройка SSL
Измените файл конфигурации /srv/gitlab/config/gitlab.rb
:
external_url "https://gitlab.example.com"
Примените изменения:
docker exec -it gitlab gitlab-ctl reconfigure
4. Работа с репозиториями
Клонирование репозитория
git clone https://gitlab.example.com/root/demo-project.git
Добавление и пуш изменений
- Создайте новый файл:
echo "Hello, GitLab!" > README.md
- Добавьте его в индекс:
git add README.md
- Зафиксируйте изменения:
git commit -m "Добавлен README файл"
- Отправьте изменения в репозиторий:
git push origin main
Создание новой ветки
- Создайте ветку:
git checkout -b feature-branch
- Отправьте ветку в репозиторий:
git push origin feature-branch
Создание Merge Request
- Перейдите в GitLab -> Merge Requests.
- Нажмите New Merge Request и выберите ветку.
5. CI/CD в GitLab
Создание файла .gitlab-ci.yml
Пример простого пайплайна:
stages:
- build
- test
build_job:
stage: build
script:
- echo "Сборка завершена"
test_job:
stage: test
script:
- echo "Тесты пройдены"
Запуск пайплайна
- Зафиксируйте файл:
git add .gitlab-ci.yml
git commit -m "Добавлен CI/CD пайплайн"
git push origin main
- Проверьте выполнение во вкладке CI/CD -> Pipelines.
6. Полезные команды Docker
- Просмотр списка контейнерров:
docker ps -a
- Логи контейнера:
docker logs gitlab
- Перезапуск контейнера:
docker restart gitlab
- Удаление контейнера:
docker rm -f gitlab
- Удаление образа:
docker rmi gitlab/gitlab-ce:latest
7. Полезные ссылки
- Официальная документация GitLab: https://docs.gitlab.com/
- Docker Hub для GitLab CE: https://hub.docker.com/r/gitlab/gitlab-ce