kb84tkhrのブログ

何を書こうか考え中です あ、あと組織とは関係ないってやつです 個人的なやつ

Dockerのお勉強 - Play with Docker

自前の環境がなくてもPlay with DockerってとこでDocker体験ができるようなのでやってみる

PWDはものの数秒でDockerコマンドを実行することができるDockerのPlaygroundです。ブラウザ上で無償のAlpine Linux仮想マシンを動かして、Dockerのコンテナを作ったり、さらにはDocker Swarmモードでクラスタを作ることさえ体験できます。内部ではDocker in Docker (DinD)が使われていて、複数のVMやPCのように動きます。Playgroundに加えて、PWDには初心者から熟練者までが利用可能なDockerの実験やクイズからなるトレーニング用のサイトがあり、training.play-with-docker.comで利用することができます。

だそうな(勝手訳

まずは[Login▼]で[docker]を選択

Docker IDってやつが必要なんだな
きっとこれは今後も使うやつだろう
[Create Account]をクリックすると本家?(https://hub.docker.com/)につながってアカウントを作成できる

アカウントを作ったらPlay with Dockerに戻ってもう一回[Login▼]かな?
お、ボタンが[Start]に変わった
クリックするとDocker Playgroundに入る

ふむ
4時間タイマーがカウントダウンしてる
これが切れると環境が消えるようだ

"Add instances to your playground."と言ってるしとりあえず素直に
"ADD NEW INSTANCE"をクリック

192.168.0.xx
node1

何かできた
ターミナルも表示されている

$ ###############################################################
#                          WARNING!!!!                        #
# This is a sandbox environment. Using personal credentials   #
# is HIGHLY! discouraged. Any consequences of doing so are    #
# completely the user's responsibilites.                      #
#                                                             #
# The PWD team.                                               #
###############################################################
[node1] (local) root@192.168.0.xx ~

どれどれ

$ docker info
Containers: 0
 Running: 0
 Paused: 0
 Stopped: 0
Images: 0
  :
  :

おお

Docker入門に書いてあったやつ順番にやっていこう

上記実行によりNginxコンテナが起動するので、8181ポートに外からアクセスできるように設定すれば(Firewallなど)、以下のURLでNginxにアクセスすることができます。

とりあえずローカルでアクセスできることを確認

[node1] (local) root@192.168.0.33 ~
$ curl localhost:8181
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
  :
  :
</html>
[node1] (local) root@192.168.0.33 ~

外からアクセスできるようにするの面倒だなーと思ったら
ブラウザ画面上に"8181"というリンクができている
クリックしたらブラウザ上にnginxの画面が!
こんな感じのURLになってました
http://ip172-18-0-xx-xxxxxxx-8181.direct.labs.play-with-docker.com/
けっこういろんなもの動かして試すまでできちゃう?

docker-composeももちろん入ってます
連載の例は全部実行して試すことができました

Play with Docker classroomにはチュートリアルからいろんなコースが揃ってるようです
でもここはぐっとこらえて次へ進みます