Re: очистка в ci/cd
От: Qulac Россия  
Дата: 01.07.25 13:45
Оценка: 4 (1) +1
Здравствуйте, Qulac, Вы писали:

Q>Делаю свой пейплайн и столкнулся с проблемой: старый образ и контейнер мешают новому образу и контейнеру т.е. нужно их удалять, стандартные команды докера с этим справляются если они уже есть, а если их нет — возвращают ошибку, т.е. при первом запуске у меня пейплайн не работает. Это конечно можно обойти, но хочется универсальное решение, т.е. какой то скрипт который сначала проверяет наличие контейнера и образа и если они есть то их удаляет. ИИ генерит что то такое не понятное и не рабочее. Может кто знает как это можно сделать при помощи например powershell ?


Отбой, сам разобрался, тут хитрый синтаксис:
cleanup-job:
  stage: cleanup
  script:
    - |
      $containers = docker ps -a | Out-String
      if ($containers -like "*$env:CONTAINER_NAME*") {
        docker stop $env:CONTAINER_NAME
        docker rm $env:CONTAINER_NAME
      }

      $images = docker images | Out-String
      if ($images -like "*$env:IMAGE_NAME*") {
        docker rmi $env:IMAGE_NAME
      }
Программа – это мысли спрессованные в код
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.