Podman-compose-to-kube: различия между версиями
Kaf (обсуждение | вклад) |
Kaf (обсуждение | вклад) |
||
Строка 9: | Строка 9: | ||
=== Экспорт развернутого стека в kubernetes-манифесты === | === Экспорт развернутого стека в kubernetes-манифесты === | ||
==== Копирование локальных образов в rootless окружении ==== | |||
В rootless-окружении образы, созданные <code>podman-compose</code> хранятся в каталоге <code>/var/lib/u7s-admin/.local/share/containers/storage/</code>. Образы же для kubernetes хранятся в другом каталоге <code>/var/lib/u7s-admin/.local/share/usernetes/containers/storage/</code>. Для образов, загружаемых с регистраторов это несущественно, так как они подгружаются при запуске <code>POD</code>'а. Образы же, созданные локально, как в нашем случае образ <code>localhost/hello-py-aioweb</code> необходимо перенести в <code>container-storage</code> для kubernetes-образов командой <code>skopeo</code>: | |||
<pre># skopeo copy \ | |||
containers-storage:[/var/lib/u7s-admin/.local/share/containers/storage/]localhost/hello-py-aioweb \ | |||
containers-storage:[/var/lib/u7s-admin/.local/share/usernetes/containers/storage/]localhost/hello-py-aioweb | |||
</pre> | |||
и изменить собственника перенесенного образа с <code>root</code> на <code>u7s-admin</code>: | |||
<pre># chown -R u7s-admin:u7s-admin /var/lib/u7s-admin/.local/share/usernetes/containers/storage/</pre> | |||
=== Корректировка kubernetes-манифестов === | === Корректировка kubernetes-манифестов === | ||
=== Запуск манифестов в kubernetes === | === Запуск манифестов в kubernetes === |
Версия от 12:18, 16 января 2024
podman-compose как средство миграция docker-compose решений в kubernetes
Одной из основных проблем миграции docker-compose
(docker swarm
) решений в kubernetes
является (полу)автоматическия генерация kubernetes-манифестов
из YAML-файлов описания стека сервисов
.
Существует достаточно бедный набор инструментов, решающий данную проблему.
Данный документ описывает решение данной проблемы путем использования команды podman-compose
.
В качестве примера разворачивания стека будет использоваться docker-compose
стек hello-python проекта podman-compose
.
Разворачивание docker-compose стека в podman-compose
Экспорт развернутого стека в kubernetes-манифесты
Копирование локальных образов в rootless окружении
В rootless-окружении образы, созданные podman-compose
хранятся в каталоге /var/lib/u7s-admin/.local/share/containers/storage/
. Образы же для kubernetes хранятся в другом каталоге /var/lib/u7s-admin/.local/share/usernetes/containers/storage/
. Для образов, загружаемых с регистраторов это несущественно, так как они подгружаются при запуске POD
'а. Образы же, созданные локально, как в нашем случае образ localhost/hello-py-aioweb
необходимо перенести в container-storage
для kubernetes-образов командой skopeo
:
# skopeo copy \ containers-storage:[/var/lib/u7s-admin/.local/share/containers/storage/]localhost/hello-py-aioweb \ containers-storage:[/var/lib/u7s-admin/.local/share/usernetes/containers/storage/]localhost/hello-py-aioweb
и изменить собственника перенесенного образа с root
на u7s-admin
:
# chown -R u7s-admin:u7s-admin /var/lib/u7s-admin/.local/share/usernetes/containers/storage/