поднимается докер компоузом, запускается это дело все на сервере через раннер Gitlab, проблема следующая: в .gitlab-ci.yml прописывая
script:
- docker-compose build
- docker-compose up
В Пайплайне проект запускается, но остается в статусе "Running" и спустя час таймаута отменяется, если же я указываю
script:
- docker-compose up -d --build
В паплане завершается процесс, но проект не запускается, в чем проблема? Подскажите в какую сторону копать?
docker-compose: https://pastebin.com/uDHMAuLd
.gitlab-ci.yml: https://pastebin.com/2ws9aY8D
На сервере:
sudo docker image ls -a
REPOSITORY TAG IMAGE ID CREATED SIZE
gitlab/gitlab-runner-helper x86_64-943fc252 cfc15d25e81e 2 hours ago 66.8MB
docker dind 8d54f09a2b77 10 days ago 256MB
tmaier/docker-compose latest 3aa4c70c869c 2 months ago 298MB
sudo docker container ls -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
Контейнер не запускается (это при
script:
- docker-compose up -d --build
значении в .gitlab-ci.yml)
Хм, а зачем запускать на том же сервере, что раннер?
впервые столкнулся с ci-cd правильно ли я понимаю что вся проблема в том что я раннер на сервер поставил, а надо на локальную машину ?
нет. вся проблема в том что ты не смог ответить на вопрос "нахуй ты запускаешь свой проект в рамках CI джобы"
в моем понимании как видно из исполнения - проект запушил на гитлаб - там он апдейтнулся и раннер видя это (установленный на сервере) собирает его на сервере
что в твоем понимании должно получиться в результате "собирает его на сервере"?
докер поднимает все 3 приложения указанные в докер-компоузе на сервере
в общем, в твоем подходе не так примерно все. CI джоба — это относительно кратковременная операция, которая в общем случае может сделать одно или несколько следующих действий: — собрать артефакты — выполнить тесты — задеплоить артефакты \ код на сервер.
Обсуждают сегодня