Amazon LinuxをDockerで動かす
AWSと言えばクラスメソッドさん、こちらの手順でほぼほぼ出来た。さすが!
Docker Meetup Tokyo #2でLTしてきた:「Docker+serverspecで作るconfigspec CI」 #dockerjp | Developers.IO
これでローカルでAmazon Linux固有環境のテストもできる〜(∩´∀`)∩ワーイ
あ、ただDockerfileに以下も追加しないとSSHがつながらなかったのでご注意を。
$ diff Dockerfile.org Dockerfile 12a13,14 > RUN chmod 600 /home/ec2-user/.ssh/authorized_keys > RUN chown ec2-user:ec2-user /home/ec2-user/.ssh/authorized_keys
イメージの接続確認
ビルドしたイメージは、以下の手順で確認できます。
- sshd起動して待ち受ける
$ docker run -d -p 22 local/amznssh /usr/sbin/sshd -D b1313f8ab7c8bfd5b0b7d5c23b6e9ed2770102adf32fe8e0dcf3799978f7df2a
- 起動したコンテナを確認
$ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES b1313f8ab7c8 local/amznssh:latest "/usr/sbin/sshd -D" 2 seconds ago Up 2 seconds 0.0.0.0:49153->22/tcp pensive_torvalds
- SSHで接続してみる
$ ssh -i xxx.pem -p 49153 ec2-user@localhost
イメージの保存
イメージは以下の方法で保存できます。
$ docker images REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE local/amznssh latest ddc2dc72ebd1 37 minutes ago 964.8 MB local/amzn latest 8cf4161c6154 About an hour ago 964.8 MB # docker save ddc2dc72ebd1 > amzn201409.tar
あとはS3にアップロードするなり、ローカルに落とすなり。
イメージの取り込み
$ docker load -i amzn201409.tar
で!
ただloadだとレポジトリ名やタグ名がないので、付けてあげた方が良いです。
$ docker images REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE <none> <none> 8fe16e021510 4 hours ago 832.1 MB $docker tag 8fe16e021510 local/amzn:2014.09 $ docker images REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE local/amzn 2014.09 8fe16e021510 4 hours ago 832.1 MB
2014/11/18 修正
$ cat amzn201409.tar | docker import - local/amzn:2014.09
では正しく取り込めませんでした。
exec: "/bin/bash": stat /bin/bash: no such file or directory
とかのエラーが出ちゃう。詳しくはこちらとか見て頂ければー。
Docker入門 Immutable Infrastructureを実現する
- 作者: 松原豊,米林正明
- 出版社/メーカー: 技術評論社
- 発売日: 2014/04/25
- メディア: Kindle版
- この商品を含むブログ (5件) を見る
白いプラスチック64スパイクペストリー生地ローラードッカー7.8 "ロング
- 出版社/メーカー: BAXEAL
- メディア:
- この商品を含むブログを見る