Docker: Что содержит образ docker? Чтобы передавать сохраненные образы между машинами, мне нужно передавать их вместе с исходными кодами?

Docker: Что содержит образ docker? Чтобы передавать сохраненные образы между машинами, мне нужно передавать их вместе с исходными кодами?

Я скопировал образы, созданные на одной машине, и скопировал эти образы на другую машину. (образы docker сохраняются с помощью команды docker save -o [images.tar])

Затем я использую команду docker loader на другой машине. Чтобы запустить эти образы, мне нужно передать исходные коды, Dockerfile, файл docker-compose.yml вместе с образами?

решение1

Dockerfile — это инструкции, используемые для создания образа. После создания образа другие могут запустить его без Dockerfile.

Сам образ должен содержать все компоненты для запуска вашего приложения, такие как двоичные файлы, библиотеки и любые скрипты (это ваш исходный код, если у вас интерпретируемый язык, такой как JavaScript).

Docker-compose.yml — это конфигурация того, как запустить ваш образ. Сюда входят такие настройки, как где публиковать порты и как монтировать тома, которые не входят в сам образ.


Поэтому, если вы скопировали свой образ, то для его запуска вам понадобится только docker-compose.yml.


Обратите внимание, что я не рекомендую переносить изображения с помощью сохранения/загрузки. Вы обнаружите, что те же самые слои, которые уже были отправлены, переносятся снова. Вместо этого можно использовать сервер реестра, даже в отключенной среде,ведение собственного реестра. Это отслеживает, какие слои являются новыми, и ускоряет передачу, а также сокращает дисковое пространство, используемое изображениями.

Связанный контент