昨年末、2人の
Dockerキャプテン が Play with Docker(PWD)という名前で開発を
発表しました-「Dockerの遊び場」。 ユーザーは、Webブラウザーで直接Dockerコンテナーのアセンブリと起動を無料で行うことができます。また、実験作業を行ってDockerをゼロから理解し、スキルを向上させることができます。
プレイエリア
サービスの
メインサイトは
play-with-docker.comで 、CAPTCHAを渡した後、クラウドホストの1つに送信され、「プレイグラウンド」の4時間のセッションが開始されます。 その中で、新しいエンティティ(インスタンス)を作成できます。 テストドッカークラスターのノード。 これらはそれぞれ、編集可能なローカルIPアドレスを持つAlpine Linuxの軽量ディストリビューション(現在はLinuxカーネル4.4.0を備えたバージョン3.6.2)のインストールです。 現在のバージョン
17.06 Community Editionに Dockerがインストールされています。
すべての作業はWebブラウザーで直接行われます。
端末をエミュレートするために、SourceLairのJavaScript実装
xterm.jsが使用されます。これは、多くの最新ブラウザー(Chrome 48 +、Edge 13 +、Firefox 44 +、Internet Explorer 11 +、Opera 35 +、Safari 8+)をサポートします。 ターミナルは操作が非常に便利で、標準のキーボードショートカット、<TAB>による自動補完をサポートしています-
docker
コンソールコマンドコマンド/引数を含みます。
作成されるエンティティの数は5つに制限されています。 また、安定したDockerを使用した標準システムイメージに加えて、devオプション(現在はDocker 17.07.0 CE RC1に基づいています)、およびUCPクラスターを管理するソリューションを備えた特別なイメージ(
Universal Control Plane )を選択できます。これは、対応するイメージ(
docker/ucp
、
docker/ucp
docker/ucp-agent
、
docker/ucp-auth
、
docker/ucp-swarm
...)
[node4] (local) root@10.0.7.6 ~ $ docker run --privileged docker/ucp<TAB> docker/ucp docker/ucp-controller:2.1.5 docker/ucp-agent docker/ucp-dsinfo docker/ucp-agent:2.1.5 docker/ucp-dsinfo:2.1.5 docker/ucp-auth docker/ucp-etcd docker/ucp-auth-store docker/ucp-etcd:2.1.5 docker/ucp-auth-store:2.1.5 docker/ucp-hrm docker/ucp-auth:2.1.5 docker/ucp-hrm:2.1.5 docker/ucp-cfssl docker/ucp-metrics docker/ucp-cfssl:2.1.5 docker/ucp-metrics:2.1.5 docker/ucp-compose docker/ucp-swarm docker/ucp-compose:2.1.5 docker/ucp-swarm:2.1.5 docker/ucp-controller docker/ucp:2.1.5
クラスターについて言えば、Play with Dockerでのテストインストールの一環として、Docker Swarmを使用してクラスターを作成することもできます。 これに対する一連のアクションは次のようになります。
Play with Dockerの一部としてDocker Swarmを使用するための詳細なステップバイステップの説明は、 このビデオ (英語)にあります。また、Dockerの初心者ユーザーがDockerプレイグラウンドで一般的に可能な(そして有用な)ことを理解しやすくするために、Play with Dockerの作成者は便利な学習リソースでサービスを補完しました。
PWDトレーニング
Dockerを使用した学習は、
training.play-with-docker.comで公開されている実験室形式の形式で提供されます。
説明付きのステップバイステップの指示+ Play with Dockerサービスで起動されたターミナルエミュレータとして作成され、提案された指示を実行できます(コマンドを完全に入力する必要さえありません-左側の説明からリストをクリックするだけで、右側のターミナルでコピー/実行されます):
Play with Docker Labホームページには2つのガイドがあります:
- 操作 (Ops)-ITプロフェッショナルおよびシステム管理者向けのDockerでの作業の開始:Dockerの最初の知り合い、その基本概念と機能。 Dockerの機能(アーキテクチャ、既存のインフラストラクチャとの統合)の詳細な調査。 生産での使用;
- 開発 (Dev)-開発者向けのDockerでの作業の開始:Dockerの基本概念と、単純なアプリケーションを構築/デプロイする方法。 継続的インテグレーションで画像レジストリとアプリケーションを使用します。 ステージングでの展開、Docker Swarmの管理、アプリケーションセキュリティ。
合計で、より多くの既製の実験室作品があり、それらの完全なリストは、複雑さのレベルによる内訳とともに、
別のページに記載されて
います 。
オープンソースとしてのPWD
Play with Dockerの注目すべき事実は、無料のMITライセンスの下で
GitHubにソースコードが
公開されていることと、作者がコミュニティからの変更に対してオープンであることです。 プロジェクトリポジトリの説明には、「あなたはPWDを知っています。それを使用します-改善する時間です!」
また、ローカルバージョンのPlay with Dockerを実行して、リソースで必要なすべての実験を実行できることも意味します。 インストールにはDocker 1.13+およびGo 1.7.1+が必要です。 技術的には、サービスを開始するために、DIND(Docker-in-Docker)機能が使用されます。これにより、Docker内でDockerを実行できます。 これを行うには、開発者からのデフォルトのイメージ(
franela/dind
)が使用されますが、必要に応じて変更できます(ベースイメージを使用します)。
開発
Moby Cool Hackセッションの一部としての4月のDockerConで、Play with Dockerの作者が彼らの発案を発表しました(
ビデオが利用可能です)。
そこで彼らはPWDのいくつかの新機能について
話しました 。
- Docker Machineのドライバー。ターミナルを介してPWDホストを管理し、SSHを介してそれらに接続できます。
- 単純なドラッグアンドドロップを使用して、Webブラウザーで開いているPWDターミナルにローカルコンピューターからファイルをダウンロードする機能(
Dockerfile
用に設計されていDockerfile
)。 - セッション用のテンプレート。5ノードのSwarmクラスターをわずか数秒でデプロイできます。
- Chrome拡張機能「 Play with Docker 」、「Try in PWD」ボタンを追加して、このオンライン環境でDockerHubから人気のある画像を起動し、同様のボタンをサイトに埋め込みます(画像用)。
- トレーニングリソースに関する新しいラボ作業( Docker 17.06に登場したマルチステージビルドでの作業を含む)。