Здравствуйте, Qulac, Вы писали:
Q>Здравствуйте, Qulac, Вы писали:
Q>>Делаю свой пейплайн и столкнулся с проблемой: старый образ и контейнер мешают новому образу и контейнеру т.е. нужно их удалять, стандартные команды докера с этим справляются если они уже есть, а если их нет — возвращают ошибку, т.е. при первом запуске у меня пейплайн не работает. Это конечно можно обойти, но хочется универсальное решение, т.е. какой то скрипт который сначала проверяет наличие контейнера и образа и если они есть то их удаляет. ИИ генерит что то такое не понятное и не рабочее. Может кто знает как это можно сделать при помощи например powershell ?
Q>Отбой, сам разобрался, тут хитрый синтаксис:
Q>Q>cleanup-job:
Q> stage: cleanup
Q> script:
Q> - |
Q> $containers = docker ps -a | Out-String
Q> if ($containers -like "*$env:CONTAINER_NAME*") {
Q> docker stop $env:CONTAINER_NAME
Q> docker rm $env:CONTAINER_NAME
Q> }
Q> $images = docker images | Out-String
Q> if ($images -like "*$env:IMAGE_NAME*") {
Q> docker rmi $env:IMAGE_NAME
Q> }
Q>
Поменял windows контейнер на linux — почему то перестало работать.