Dockerで遊ぶ-Dockerを実際に知るためのオンラインサービス





昨年末、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を使用してクラスターを作成することもできます。 これに対する一連のアクションは次のようになります。



 #    ,   : [node1] (local) root@10.0.7.3 ~ $ docker swarm init --advertise-addr 10.0.7.3 Swarm initialized: current node (txh3ffph72xarxjeg9gmpra2s) is now a manager. To add a worker to this swarm, run the following command: docker swarm join --token SWMTKN-1-698vpn9u804ik4xdc9by60ytdabx3kuzyxj3vzhtr74qvkdlja-7xa6pwit58xzun989tao2nis7 10.0.7.3:2377 To add a manager to this swarm, run 'docker swarm join-token manager' and follow the instructions. [node1] (local) root@10.0.7.3 ~ $ docker node ls ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS txh3ffph72xarxjeg9gmpra2s * node1 Ready Active Leader #       (, node2) [node2] (local) root@10.0.7.4 ~ $ docker swarm join --token SWMTKN-1-698vpn9u804ik4xdc9by60ytdabx3kuzyxj3vzhtr74qvkdlja-7xa6pwit58xzun989tao2nis7 10.0.7.3:2377 This node joined a swarm as a worker. #      (   ) [node1] (local) root@10.0.7.3 ~ $ docker node ls ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS szx0qqvj5zwt6a4nho9an54yx node2 Ready Active txh3ffph72xarxjeg9gmpra2s * node1 Ready Active Leader
      
      





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つのガイドがあります:



  1. 操作 (Ops)-ITプロフェッショナルおよびシステム管理者向けのDockerでの作業の開始:Dockerの最初の知り合い、その基本概念と機能。 Dockerの機能(アーキテクチャ、既存のインフラストラクチャとの統合)の詳細な調査。 生産での使用;
  2. 開発 (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のいくつかの新機能について話しました



  1. Docker Machineのドライバー。ターミナルを介してPWDホストを管理し、SSHを介してそれらに接続できます。
  2. 単純なドラッグアンドドロップを使用して、Webブラウザーで開いているPWDターミナルにローカルコンピューターからファイルをダウンロードする機能( Dockerfile



    用に設計されていDockerfile



    )。
  3. セッション用のテンプレート。5ノードのSwarmクラスターをわずか数秒でデプロイできます。
  4. Chrome拡張機能「 Play with Docker 」、「Try in PWD」ボタンを追加して、このオンライン環境でDockerHubから人気のある画像を起動し、同様のボタンをサイトに埋め込みます(画像用)。







  5. トレーニングリソースに関する新しいラボ作業( Docker 17.06に登場したマルチステージビルドでの作業を含む)。



All Articles