MacのVB上でCoreOSをホストに使い、alpineベースのdocker環境を作る part 1


構成

  • part 1

Mac上のVBにCoreOSを入れ、インストールする。

  • prat 2

CoreOSの基本設定とdockerの基本設定をする。

  • part 3

alpineベースのdockerを楽しむ。

Mac上のVBにCoreOSを、入れインストールする

  • Mac
    OS X El Capitan

  • VirtualBox
    4.3.30

CoreOSを入手

下記のURLより、CoreOSのISOをダウンロードする(stable推奨)

Booting CoreOS from an ISO

ネットワーク設定

VB上で以下のネットワーク設定のhost-only Networksにて以下を作成

CoreOSを立ち上げる

上記の設定を当てたVBを立ち上げる。
当てた設定が反映されていれば、DHCPでIPアドレスが割り当てられる。

CoreOSにSSH出来るように設定する

VBのコンソールは使いづらいので、Mac上のターミナルからssh出来るようにしたい。

ダウンロードしたCoreOSにはデフォルトでCoreというユーザがあるが、パスワードが設定していないため設定する。

cmd
$ sudo passwd core

ここまでの設定で、IPの設定とユーザ・パスワードの設定が完了したので外からSSHが出来るようになる

MacからSSH
$  ssh [email protected] -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null
Warning: Permanently added '192.168.59.100' (ED25519) to the list of known hosts.
[email protected]'s password: 
Last login: Mon May  9 08:37:54 2016
CoreOS stable (835.13.0)
Update Strategy: No Reboots
core@localhost ~ $ 

鍵の設定をする

Macにて

  • 秘密・公開鍵の作成
$ ssh-keygen -t rsa -C 'for coreos' -f id_rsa-coreos
$
$
$ ls -1
id_rsa-coreos
id_rsa-coreos.pub

coreos上にて

  • 鍵の設定をする。
$ sudo su -
# vim config
/root/config
#cloud-config

ssh_authorized_keys:
  - ssh-rsa AAAAB3NzaC1yc2EAAA....(id_rsa-coreos.pubの中身)
  • cloud-configのシンタックスチェック
cmd
$ sudo coreos-cloudinit -validate=true -from-file=./config
  • 設定の反映
### ダウンロードしたバージョン(Stable | Beta | Alpha)でstableのところを書き換えて下さい。
# coreos-install -d /dev/sda -C stable -c config
# shutdown -h now

Mac上にて。

  • VB上の操作でstorageからcoreosをアンマウントする
  • 起動
  • 鍵を使って、sshする
$ ssh -i id_rsa-coreos [email protected] -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null
Warning: Permanently added '192.169.59.100' (ED25519) to the list of known hosts.
CoreOS stable (835.13.0)
core@localhost ~ $ 
core@localhost ~ $ 
core@localhost ~ $ 
core@localhost ~ $ 
core@localhost ~ $ 
core@localhost ~ $ 

無事、鍵によるsshが出来るようになる。

ただ、今回の設定だと鍵以外の全ての設定が吹っ飛んでしまうので次回はちゃんと設定していく。