从EC2 AMI创建一个泊坞窗图像/容器

问题描述 投票:17回答:3

我是docker的新手,我正在尝试将我的AWS EC2 AMI导入docker镜像。该图像是m2 linux图像。

我还设置了一个私人码头中心(神器),我打算将图像推送到其中并使其可供使用。将AMI导入docker镜像而不从基本图像开始并更新的步骤是什么。

任何解释的指针也会起作用。

docker dockerfile dockerhub docker-registry
3个回答
16
投票

我就是这样做的。

  • 在源AMI上,在描述中找到根卷快照ID

的/ dev / SDA1 = snap-eb79b0b1:15:真:GP2

  • 使用公共Ubuntu 14.04 AMI启动实例
  • 从快照snap-eb79b0b1创建卷(与实例运行的区域相同)。
  • 将卷作为/dev/sdf附加到实例
  • 装载到/mnt

mount /dev/xvdf /mnt

(要么)

mount /dev/xvdf1 /mnt

  • 安装docker

https://docs.docker.com/engine/installation/ubuntulinux/

  • 从已安装的根卷导入docker镜像

tar -c -C /mnt/ . | docker import - appcimage-master-1454216413

docker run -t -i 6d6614111fcb03d5ca79541b8a23955202dfda74995d968b5ffb5d45c7e68da9 /bin/bash


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。


0
投票

当创建tar文件cd到目录和tar从那里的树。

cd /media/my-external-drive
tar -czvf /tmp/drive-image.tgz

然后创建图像... docker import /tmp/drive-image.tgz

这允许dockerized容器在运行时创建正确的路径。

© www.soinside.com 2019 - 2024. All rights reserved.