У меня есть работа Дженкинса, которая создает все мои образы докеров и отправляет их в мой докер-хаб.Затем он отправляется по ssh на сервер, на котором я хочу развернуть, и запускает команду docker-compose pull && docker-compose up.
По какой-то причине этот механизм плохо обрабатывает изменения в докерах.Я изменил одно из моих требований на одном из изображений.Я вижу в jenkins, что он распознал изменение и не использовал кеш для этой стадии:
Step 16/33 : RUN ldconfig
---> Using cache
---> 15284e3997f6
Step 17/33 : ADD requirements.txt requirements.txt
---> 1c2d81548e55
Step 18/33 : RUN pip install -r requirements.txt
---> Running in 679034a149d4
Collecting alembic==0.9.5 (from -r requirements.txt (line 1))
вы можете видеть здесь, что шаг 16 все еще использовал кеш, а шаг 17 - нет.Который работает как положено.
Затем я нажимаю изображения:
-------------
Publishing Images
-------------
Pushing base (<docker-hub-server>/base:latest)...
The push refers to repository [<docker-hub-server>/base].
После этого я ssh на сервер и вытаскиваю изображение.
Проблема в том, что по какой-то причине новый образ с обновленными зависимостями не был передан по какой-то причине.
Я попытался удалить все контейнеры и изображения как на сервере jenkins, так и на сервере назначения.
Такое ощущение, что что-то неправильно кэшируется.
я ищу решение, которое заставит выталкивать это изображение в репозиторий или что-то подобное.
Редактировать:
подробнее:
The push refers to repository [<docker-hub-server>/base]
9430005e84f9: Preparing
48e6dda22a29: Preparing
972483a80c7c: Preparing
a534cbaa9205: Preparing
23b2691ba244: Preparing
0f29e137999a: Layer already exists
b154080f7784: Layer already exists
0c7778ab05f8: Layer already exists
b2a1e0120631: Layer already exists
a597ec0005e2: Layer already exists
a5dc291ad4b4: Layer already exists
c54dfcd94152: Layer already exists
3415f7db917e: Layer already exists
0c01967aaa96: Layer already exists
7f969e99b7b3: Layer already exists
45652f92e451: Layer already exists
4acd815bd647: Layer already exists
72a531f31293: Layer already exists
b9624af892c1: Layer already exists
3c0dc8487715: Layer already exists
d54136b410c5: Layer already exists
cc349f2a25e3: Layer already exists
b8b4502cfe14: Layer already exists
a2bc3f3bafb5: Layer already exists
db067458dfa6: Layer already exists
ccec44bf5310: Layer already exists
a1ae7010d9f9: Layer already exists
03a6b6877a9b: Layer already exists
ef68f6734aa4: Layer already exists
После проверки в jenkins, правильное изображение есть, но все же, когда я нажимаю, оно говорит, что все слои уже существуют, даже если были изменены шаги 16, 17.