Изображение докера корабля в виде OVF
Я разработал приложение и использую Docker для его создания. Я хотел бы отправить его как пакет VMware OVF. Какие у меня варианты? Как отправить его, чтобы клиент мог развернуть его в своей среде VMware?
Также я использую базовый образ Ubuntu и установил на него NodeJS, MongoDB и другие зависимости. Но я хотел бы сконфигурировать мое приложение на базе NodeJS и базу данных MongoDB как сервис в пакете, который я намереваюсь отправить. Я знаю, как настроить их как службу, используя init.d на обычной виртуальной машине. Как мне поступить об этом в Docker? Должны ли я хранить мои файлы init.d в папке приложения и копировать их в контейнер Docker во время сборки? Или есть лучшие способы?
Ценю любые советы.
Обновить:
Я задаю этот вопрос по той причине, что моим целевым пользователям не обязательно знать докер. Приложение должно быть легко развернуто для тех, кто не имеет опыта работы с докером. Со всеми службами в одной виртуальной машине легко устранять проблемы. Как и в случае, все файлы журнала будут сохранены в каталоге /var/log для разных сервисов, и мы можем видеть статус всех разных сервисов одновременно. Вместо того, чтобы пользователю приходилось заглядывать в каждую докерскую службу. И, возможно, устранение неполадок с самим докером.
Но в то же время я чувствую себя удобным для сборки приложения докерским способом.
1 ответ
VMware vApps
обычно состоит из нескольких виртуальных машин, работающих для предоставления услуги. Они могут иметь зависимости запуска и т. Д.
Сейчас использую docker
вы можете иметь эти виртуальные машины в качестве контейнеров, работающих на одном docker host
VM. Таким образом, одна виртуальная машина устраняет необходимость vAPP
,
С другой стороны, философия контейнерных перевозок требует от нас использования микросервисов. краткое объяснение в вашем случае, помещая каждую услугу в отдельный контейнер. Затем запишите docker compose
файл, чтобы поднять контейнеры и положить его в запуск. После этого вы можете сделать OVF
вашей виртуальной машины докера и отправьте ее.
На мой взгляд, лучший способ создать docker images
положить их в свой repository
и пусть клиенты их вытягивают. Затем предоставьте docker compose
файл для них.