Transfer docker image to another server

January 14, 2022

Бывают случаи когда нужно сделать трансфер самого контейнера (не образа). Делается это очень просто:

docker save -o container.tar image_name

Затем переносим тар файл куда угодно (можно даже хранить как бекап). Чтобы загрузить используем такую команду:

docker load -i container.tar

Все. Все очень просто.

Кстати, в контейнере можно так же сохранять изменения, вместо того чтобы пересобирать его из докер файла заново.

docker exec -it container_name bash

# длее вы что-то делаете внутри, ставите софт, меняете конфиги...
exit

Для сохранения изменений, после внесения, выходите из контейнера и пишите:

# docker commit [CONTAINER_ID] [new_image_name]
docker commit deffa40fa274 ubuntu-with-php8

Теперь у вас есть контейнер, который так же можно переместить на другой сервер. А паралельно вы все изменения должны зафиксировать в Dockerfile, для будущих сборок, чтобе не потерять все накопленные занния внутри контейнера.


Profile picture

Written by Alexander Mayorov
Full Stack CTO