サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
大阪万博
qiita.com/zembutsu
概要 コマンドラインで手を動かしながら、コンテナやイメージの作成や実行、移動、削除について理解を深めます。 Docker CE(Community Edition) v17.03以降の内容に対応しています。 達成できること Docker イメージとコンテナの基本操作を理解 Docker イメージの自動構築 Docker Hub でイメージ送受信 0. はじめに(用語の確認) 「Docker」とは、アプリケーションなどのソフトウェアを簡単にどこでも「コンテナ」として実行するためのプラットフォームです。このハンズオンおよび一般的な操作における Docker とは、プログラム全体を司る、サーバ上でデーモンとして常駐している Docker Engine(エンジン)を指します。 「コンテナ」(container)とは、ソフトウェアの実行に必要なすべてをパッケージ化したものです。しかし、仮想マシンとは
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 概要 4/18、dockercon17 の1日目の general session で、Docker から既存プロジェクトを移行する、新しい Moby プロジェクトの発表がありました。以下ブログ訳ですが、内容把握のための参考程度にお読みいただければと思います。図は省略していますので、原文をご覧ください。 Introducing Moby Project: a new open-source project to advance the software containerization movement - Docker Blog ht
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 概要 4/18(現地) DockerCon2017 で、Docker から LinuxKit (https://github.com/linuxkit/linuxkit) の公開とオープンソース化の発表がありました。ブログにも該当の解説記事が公開されており、例によって内容の把握用に、雑に訳しました。参考程度に留めて頂ければ幸いです。 原文 Announcing LinuxKit: A Toolkit for building Secure, Lean and Portable Linux Subsystems - Docker Blog
概要 Mastodon (https://github.com/tootsuite/mastodon) を、ローカル環境などの Docker で雑に動かす方法のまとめです。具体的には Linux サーバ上に Docker と Docker Compose で環境を構築し、http://<ip>:3000/ に表示します。細かい設定は抜きにして、とにかく動かして挙動を見たいかた向けの手順です。公式READMEでは、Docker関連の説明で一部足りない箇所があると思い、再整理しました。 なお、実際のサーバで動かす場合には、管理ユーザの設定や、メールサーバの設定がユーザ確認のために必要ですが、ここでは。省略しています。以下の管理ガイドやプロダクションガイドをご覧ください。 Administration Guide Production Guide Docker 関連セットアップ まず、Docke
概要 2017年1月18日にリリースされた Docker v1.13 以降(今日現在の v17.03.0-ce )は、 docker コマンドラインの命令体系が再編成されました。本記事では変更に至った背景と、新旧コマンド体系の比較情報を整理します。 新しいサブコマンド体系の導入と背景 新しいコマンド体系の導入に至ったのは、docker のトップレベル・コマンド群が 40 を越える状況(当時)となったためです。コマンドには頻繁に使うものもあれば、使わないものもあり、再編成されることになりました。 v1.13から論理オブジェクト単位にコマンドが再編成されました。これは、「何」(コンテナやイメージ、ネットワーク)を、「どうするか」(作成、一覧、起動、停止)で扱います。そのため、従来よりもコマンドの利用目的が分かりやすくなります。たとえば、コンテナを管理する docker container サブ
さくらインターネット Advent Calender 2016 その1 の、1日目を担当している @zembutsu こと、前佛雅人です。( その2 もあります!) 「複数のサーバやスイッチを、コマンド1つで一括管理しよう!」というコンセプトのもと、さくらのクラウドでも Terraform が使えるのを伝えたい、その一心で本日の記事を書きました。 クラウドや Terraform に至る登場背景(どうして Terraform が必要となったのか)から、クラウドの GUI 上で面倒な作業を行わずに、コマンド1つでスイッチを含む複数台のシステムを、作成・変更・削除する方法をご紹介します。 「もう Terraform は知っている、すぐに試したい!」というかたは、後半のチュートリアル編からお読みください。 インフラ管理の課題を解決する Terraform クラウドと仮想化と API 「クラウド・コ
概要 Rancher のセットアップと基本操作を学びます。それから Rancher を通した Kubernetes クラスタの構築と、基本概念・操作方法を学びます。 イベント情報 https://sakura-kanto.doorkeeper.jp/events/53172 スライドURL http://bit.ly/sakura20161108s 以下ハンズオンでは「さくらのクラウド」を利用していますが、CentOS 7 をご利用可能な環境であれば、どこでもお試しいただけます。 1. さくらのクラウドにログイン 1.1. ブラウザでコントロールパネルを表示 https://secure.sakura.ad.jp/cloud/ 1.2 接続情報を確認 配付資料に含まれるログイン情報を入力し、ログインします。 2. 仮想サーバの起動と接続 2.1 さくらのクラウドで仮想サーバを起動 1. 【
概要 Nginx コンテナの作成・実行と、Docker Hub へのアップロード、Arukas へのデプロイを通し、Dockerコンテナのライフサイクルを理解します。 イベント情報 https://sakura-kanto.doorkeeper.jp/events/52770 ハンズオン用の解説スライド http://www.slideshare.net/zembutsu/docker-hands-on-training-sakura-container-evening 以下ハンズオンでは「さくらのクラウド」を利用していますが、CentOS 7 をご利用可能な環境であれば、どこでもお試しいただけます。 1. さくらのクラウドにログイン 1.1. ブラウザでコントロールパネルを表示 1.2 接続情報を確認 配付資料に含まれるログイン情報を入力し、ログインします。 2. 仮想サーバの起動と接続
誰? Masahito Zembutsu @zembutsu (個人用) とある会社の Technology Evangelist (仕事) HashiCorp や Docker のドキュメント翻訳や技術検証 https://pocketstudio.net http://docs.docker.jp 過去の発表スライド http://www.slideshare.net/zembutsu Topics HashiCorp Consul 概要 開発背景 アーキテクチャ Consul でサービス登録 Consul Template HashiCorp 会社設立は 2012 年 Mitchell Hashimoto 氏と Armon Dadger データセンタ管理に革命をもたらすこと 設計思想は The tao of HashiCorp(Workflows, not Technologies
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? こちらにリリース情報があったので、機能確認用に翻訳しました。 参考程度にどうぞ Builder(ビルダー) Dockerfile の新しい HEALTHCHECK 命令は、ユーザ定義ヘルスチェックをサポート Dockerfile の新しい SHELL 命令は、Dockerfile でコマンド実行時に使うデフォルトのシェルを指定 Dockerfile ディレクティブに #escape= を追加。プラットフォーム固有のパスをパースできるようにするため .dockerignore ファイルでコメント機能の追加 Dockerfile で UTF
概要 Docker のベース・イメージを Ubuntu から Alpine Linux に移行し、Docker イメージの容量を削減できた(141MB→3MB)。このイメージのビルド時、コマンドラインで扱う analog コマンドを make し、コマンドとして analog コンテナを使うイメージにする。以下は具体的な移行手順を記載。 動機 アクセス解析ツール Analog の Docker コンテナ対応作業を進めている。 Ubuntu:14.04 イメージを元に作成していたが、容量が 141MB と大きかった。 consul の公式イメージが 10MB という小ささなのは Alpine イメージを使っているからではという仮説からスタート。検証のため、イメージを Ubuntu から Alpine に移行することにした。 Dockerfile 移行時の考慮点 パッケージ・マネージャ Ubu
概要 手を動かしながら docker コマンドの基礎を学びます。 Docker イメージを使い、どのようにコンテナを動かすかを理解します。 イメージを自動構築し、Docker Hub にアップロードします。 Dockerfile の基本と、CMD と ENTRYPOINT の違いを理解します。 所要時間は約15~30分です。 発表資料(Dockerライフサイクルの基礎)の中からハンズオン部分だけを抽出したものです(コピー&ペーストの確認用)。こちらを副読資料として、あわせてご覧ください。 Dockerライフサイクルの基礎 地雷を踏み抜けろ! http://www.slideshare.net/zembutsu/docker-underlying-and-containers-lifecycle ハンズオン内容 ドキュメントの Get Started with Docker の内容をベースに
概要 Docker 社のブログに Docker 1.11 リリースに関する投稿があり、以下は、技術的な要素を要約したもの+各リリースノートへのリンク。参考程度にどうぞ。 Docker 1.11: The first OCI-compliant runtime, built on containerd Docker 1.11 のリリース Docker Engine は runC と containerd を基にして開発した(OCI準拠)初めてのリリース。 Docker が 昨年6月にコンテナ規格とランタイムを寄贈した成果。 containerd を去年12月に発表 し、Engine に取り込んだ初めてのリリース。 Docker Engine を使えば自動的に OCI に準拠するシステムを使うことになる。 コマンドラインや API に変更はない。これまで通り、ユーザは Docker Engin
概要 Docker for Windows (beta)のセットアップや、基本的な使い方に関するメモ書き。現時点では機能評価用であり、今すぐ既存の Docker Toolbox に置き換わるものではない。なお、内容はDocker for Windows に興味を持っている方向け。 Docker for Windows とは? 3月末に Docker プロジェクトから Docker for Mac と Windows が発表 された。現時点では目下開発中であり 登録者 向けのプライベート・ベータの位置付け。 Mac 版と Windows 版では別々に開発が進んでおり、内部実装も異なる(Mac は xhyve を使うのに対して、Win では Hyper-V / Win10 が前提)。現時点では Mac 版のほうが機能が先行しており、それを Win 版が追っている状況。Blog の投稿によると、
Docker Compose - Compose をプロダクションで使うには 原文:Using Compose in produciton https://docs.docker.com/compose/production/ まだ Compose はプロダクション(本番)で使える状態ではありませんが、もし実験的、あるいはプロダクションへのデプロイの練習に使うのであれば、このガイドが役に立つでしょう。プロジェクトはプロダクションで使えるように作業が進行しています。進捗状況を知りたければ、ロードマップ(英語) で現在の状況や、足りないものを確認ください。 プロダクションへのデプロイ時、実行環境として適切な設定行ったアプリケーションを、あまり変更したくないでしょう。変更とは次のようなものです: アプリケーション用に割り当てられたボリュームを削除しますが、コンテナの中にコードは残したままとし、外
概要 Zabbix 3.0 の検証用に Docker で簡単に環境を構築できるようにした。構築には Docker Compose を使い Zabbix Server 用コンテナと MariaDB コンテナを稼働・管理する。 動作条件 今回の確認を行ったのは以下の環境。 CentOS 7.2 (kernel 3.10.0-327.10.1.el7.x86_64) Docker Engine 1.10 + Docker Compose 1.6 Zabbix コンテナ zabbix-3.0 zabbix-db-mailadb 環境構築 作業方針 zabbix-community-docker で配布されている Zabbix 3.0 の Docker イメージを使い環境構築を行う。 コンテナは Docker Compose を使って一括管理できるようにする。ただし、コミュニティで配布されている d
オプションは、上から --driver … DigitalOcean 用の Docker Machine ドライバを使う( 必須 ) --digitalocean-access-token … API トークンの指定 ( 必須) --digitalocean-region … リージョンを sgp1 (シンガポール1) --digitalocean-size … ドロップレットのサイズを 2gb --digitalocean-image … 仮想マシン・イメージを CentOS 7.2 にするため centos-7-0-x64 を指定 ホスト名を centos7-docker に(ホスト名の指定は 必須 ) ここで重要なのは CentOS 7.2 x86 イメージを使いたい場合は、イメージに centos-7-0-x64 (7.2ではない)を指定する必要がある。 コマンドを実行すると、次の
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? Docker 社の Blog にネットワーク機能や新しい Compose 1.6 に関する投稿がありました。翻訳しましたので、以下参考程度にどうぞ。 対象となるのは、2016年2月にリリースされた Docker Engine 1.10 Docker Swarm 1.1 Docker Compose 1.6 です。 Docker Networking Design Philosophy | Docker Blog https://blog.docker.com/2016/03/docker-networking-design-philos
概要 Docker 1.9 からマルチホスト・ネットワーク機能が利用可能となった。動作検証として、DigitalOcean の環境上に、Docker Machine で Swarm クラスタを作り、オーバレイ・ネットワーク上を作成。最終的に、複数ホスト上にウェブとデータベースを分散した WordPress の環境を作成する。ここでは Docker Compose を使用し、オーバレイ・ネットワークの自動構築も試みる。 Docker 1.9 のネットワーク機能については、以下 URL を参照のこと。 【参考訳】 Docker 1.9 発表:Swarm とマルチホスト・ネットワーキングのプロダクション対応 【参考訳】 プロダクションに対応するマルチホスト Docker ネットワーク機能 参考訳:マルチホスト・ネットワーキングを始めよう - Qiita 参考訳:Docker コンテナ・ネットワー
Get started with multi-host networking http://docs.docker.com/engine/userguide/networking/get-started-overlay/ マルチホスト・ネットワーキングを始めよう このページでは、マルチホスト・ネットワーキングの基本的な例について説明します。独創的な overlay ネットワーク・ドライバによって、Docker エンジンはマルチホスト・ネットワーキングをサポートしました。bridge ネットワークとは違い、オーバレイ・ネットワークは作成前にいくつかの事前準備が必要です。準備とは次のようなものです: kernel バージョン 3.16 以上のホスト キーバリュー・ストアに対するアクセス。エンジンがサポートするキーバリュー・ストアは、Consul、Etcd、Zookeeper(分散ストア)です。
Docker container networking http://docs.docker.com/engine/userguide/networking/dockernetworks/ Docker コンテナ・ネットワークの理解 ウェブ・アプリケーションの構築は、安全についての考慮が必要であり、そのために Docker ネットワーク機能を使います。ネットワークとは、定義上、コンテナのために完全な分離(isolation)を提供するものです。そして、アプリケーションの実行にあたり、ネットワーク管理は重要であることを意味します。Docker コンテナ・ネットワークは、これらを管理するものです。 このセクションでは、Docker Engine ドライバ固有の標準ネットワーク機能について、その概要を扱います。ここでは標準のネットワーク・タイプについてと、どのようにして自分自身でユーザ定義ネット
Floating IP DigitalOcean から 10月20日(現地時間)に Floating IP 機能が発表された。その機能概要と使い方について整理。 Floating IP 機能とは DigitalOcean 上のドロップレット(仮想サーバ)にパブリックな IPv4 アドレスを動的に付けたり外したりできる機能。インターネット側からは、DigitalOcean から割り当てられた Floating IP で接続出来る。ドロップレット内ではパブリック側のインターフェース eth0 に対して、アンカー IP 用の設定(10.15.0.7/16など、プライーベートのアドレス空間)が追加されている。 このアンカー IP は、サービスリリース(10月20日)以降に起動したドロップレットであれば、自動的に割り振られている。しかし、以前のサーバでは手動でアンカー IP の追加作業が必要(コマン
Docker Compose - Compose の拡張サービス 原文:Extending services in Compose https://docs.docker.com/compose/extends/ Docker Compose の extends(拡張)キーワードによって、別々のファイルにある共通の設定を共有できるようにしたり、まったく別のプロジェクトでも使えるようになります。拡張サービス(Extending service)は、一般的に定義されたサービスを複数のサーバで再利用するときに便利です。1つの場所でサービスの定義をしておけば、extends を使うことで、どこからでも参照できます。 あるいは、複数の環境に、少しだけサービスが異なる(あるいは、いくつかの設定を変えている)同じアプリケーションをデプロイすることもできます。更に、コピー・ペーストを使わずに設定できます。
次のページ
このページを最初にブックマークしてみませんか?
『@zembutsuのマイページ - Qiita』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く