June 19, 2014

Vagrant上のCoreOSで作成したUbuntuのDockerイメージにSSHサーバーをインストールして、Macからログインするまでのメモ

メモです。

前回の記事で作成したDockerイメージを使って、タイトルの通りのことをしてみました。
http://madroom-project.blogspot.jp/2014/06/vagrant-coreosubuntudocker.html

参考:
http://docs.docker.com/examples/running_ssh_service/
http://inokara.hateblo.jp/entry/2013/09/29/090500

SSHサーバーのインストールと設定をします。尚、当記事の /etc/ssh/sshd_config の編集内容は、セキュリティ周りを考慮していません。
$ docker run -i -t mamor/ubuntu-phpdev /bin/bash

# apt-get install vim openssh-server -y
# mkdir /var/run/sshd
# cp /etc/ssh/sshd_config /etc/ssh/sshd_config.original
# vim /etc/ssh/sshd_config # 以下の編集をします。

# diff /etc/ssh/sshd_config.original /etc/ssh/sshd_config
28c28
< PermitRootLogin without-password
---
> PermitRootLogin yes

# passwd root
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully

# exit
コンテナのIDを確認してコミットします。
$ docker ps -a
CONTAINER ID        IMAGE                        COMMAND             CREATED             STATUS                     PORTS               NAMES
9cfd78ba8a20        mamor/ubuntu-phpdev:latest   /bin/bash           3 minutes ago       Exited (0) 5 seconds ago                       angry_heisenberg

$ docker commit 9cfd78ba8a20 mamor/ssh
ポート22を指定して、コンテナをバックグラウンドで起動します。
$ docker run -d -p 22 mamor/ssh /usr/sbin/sshd -D
3d6c2249369ad059fd2005c2c0589c9f76b624808ba59d1fde8942eaa42e98f0
コンテナの22番ポートにフォワードされている、CoreOSのポートを確認します。
$ docker port 3d6c2 22
0.0.0.0:49153
Macから接続してみます。パスワードは、Dockerコンテナで指定したパスワードです。尚、当記事のCoreOSは https://github.com/coreos/coreos-vagrant.git で構築されていて、IPアドレスは "172.17.8.101" になっていました。
$ ssh root@172.17.8.101 -p 49153
root@172.17.8.101's password:
Welcome to Ubuntu 14.04 LTS (GNU/Linux 3.2.0-58-generic x86_64)

 * Documentation:  https://help.ubuntu.com/

The programs included with the Ubuntu system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
applicable law.

root@29932f436be8:~#
(これでMacからDockerのUbuntuに対してserverspecの実行できるかな?)

No comments:

Post a Comment