Docker

トップ > レビュー > Docker

Dockerを使ってみる

未だに何が出来るのかいまひとつ理解できていなくて、とりあえず使ってみました。

MySQLを起動してクライアント(こちらもdockerコンテナ)から接続します。手元にイメージがなければ勝手にダウンロードされます。クライアントのコマンドはややこしいですが、環境変数に必要な値が用意されているため、これをそのままエイリアスなりスクリプトなりに保存しておけば使いまわせると思います。

docker run --name mysqld -e MYSQL_ROOT_PASSWORD=secret -d mysql:5.7
docker run -it --link mysqld:mysql --rm mysql sh -c 'exec mysql -h"$MYSQL_PORT_3306_TCP_ADDR" -P"$MYSQL_PORT_3306_TCP_PORT" -uroot -p"$MYSQL_ENV_MYSQL_ROOT_PASSWORD"'

起動中のコンテナは以下のように確認します。「-a」をつけると停止中のコンテナも見えます。

docker ps

停止する場合はIDか名前を指定して「stop」コマンド、完全に消去する場合は「rm」です。

docker stop mysqld
docker rm mysqld

停止したコンテナを起動する場合は「start」コマンドを使います。

docker start mysqld

コマンド履歴が使えないのがちょっと残念ですが、あとは概ね良い感じ。

FROM docker/whalesay:latest
RUN apt-get -y update && apt-get install -y fortunes
CMD /usr/games/fortune -a | cowsay

Dockerfileを書いて、独自のイメージを作る作業は公式サイトのチュートリアルを試しました。

Dockerfile
FROM docker/whalesay:latest
RUN apt-get -y update && apt-get install -y fortunes
CMD /usr/games/fortune -a | cowsay
docker build -t docker-whale .

railsを立ち上げてmysqlのコンテナとつなぐ、、などとなってくるとdocker-composerなども必要になるのでしょうか。このあたりはまた後日改めて…。

docker rm `docker ps -a -q`
docker rmi `docker images -a -q`

参考URL