我是docker的新手,我正在尝试将我的AWS EC2 AMI导入docker镜像。该图像是m2 linux图像。
我还设置了一个私人码头中心(神器),我打算将图像推送到其中并使其可供使用。将AMI导入docker镜像而不从基本图像开始并更新的步骤是什么。
任何解释的指针也会奏效。
答案 0 :(得分:15)
我是这样做的。
<强>的/ dev / SDA1 = snap-eb79b0b1
:15:真:GP2 强>
使用公共Ubuntu 14.04 AMI启动实例
从快照snap-eb79b0b1创建卷(与实例运行的区域相同)。
将卷附加到实例/dev/sdf
将卷装入/mnt
mount /dev/xvdf /mnt
(或)
mount /dev/xvdf1 /mnt
https://docs.docker.com/engine/installation/ubuntulinux/
tar -c -C /mnt/ . | docker import - appcimage-master-1454216413
docker run -t -i 6d6614111fcb03d5ca79541b8a23955202dfda74995d968b5ffb5d45c7e68da9 /bin/bash
答案 1 :(得分:1)
Docker可以使用docker import
命令从tar文件创建映像。来自the documentation:
Usage: docker import URL|- [REPOSITORY[:TAG]]
Create an empty filesystem image and import the contents of the tarball
(.tar, .tar.gz, .tgz, .bzip, .tar.xz, .txz) into it, then optionally
tag it.
因此,您应该可以从AMI图像创建tar存档,然后将其提供给docker。
答案 2 :(得分:0)
在目录中创建tar文件cd
时,从那里创建tar
树。
cd /media/my-external-drive
tar -czvf /tmp/drive-image.tgz
然后创建图像...... docker import /tmp/drive-image.tgz
这允许dockerized
容器在运行时创建正确的路径。