第1回 Gaming Tech Night にて発表した資料です。 http://gamingtechnight.connpass.com/event/34249/Read less
Dockerの諸問題とRocket登場の経緯 Rocketはリリースした直後にちょっと触ってそのまま放置していた.App containerの一連のツールとRocketが現状どんな感じかをざっと触ってみる.まだまだ全然使えると思えないが今後差分だけ追えるようにしておく. なお,今回試した一連のツールをすぐに試せるVagrantfileをつくったので触ってみたいひとはどうぞ. https://github.com/tcnksm/vagrant-appc 概要 App Container SpecやRocketが登場の経緯は前回書いたのでここでは省略し,これらは一体何なのかを簡単に書いておく. まず,App Container(appc)Specはコンテナで動くアプリケーションの"仕様"である.なぜ仕様が必要かというと,コンテナという概念は今まで存在したが曖昧なものだったため.namespac
2014年の後半あたりからDocker,Docker Inc.への批判を多く見かけるようになった(もちろんもともと懸念や嫌悪を表明するひとはいた).それを象徴する出来事としてCoreOSチームによる新しいコンテナのRuntimeであるRocketのリリースと,オープンなアプリケーションコンテナの仕様の策定を目指したApp Containerプロジェクトの開始があった. CoreOS is building a container runtime, Rocket 批判は,セキュリティであったり,ドキュメントされていない謎の仕様やバグだったり,コミュニティの運営だったり,と多方面にわたる.これらは具体的にどういうことなのか?なぜRocketが必要なのか?は具体的に整理されていないと思う.これらは,今後コンテナ技術を使っていく上で,オーケストレーションとかと同じくらい重要な部分だと思うので,ここ
Vagrant1.6のDocker provider Feature Preview: Docker-Based Development Environments Vagrant 1.6からDocker providerがサポートされた.つまり,VagrantでVMだけでなくコンテナも管理できるようになった. この機能はネイティブでDockerをサポートしてないOSXでも使え,この場合は裏側でProxy VM(boot2docker box)が勝手に立ち上がって,その上でコンテナが立ち上がる.つまり,以下のようになる. OSX -> (Proxy VM) -> Docker Container OSXの場合,これは今までboot2dockerを使ってやってきたのと変わらない.ただ,Docker providerを使うと,boot2dockerの立ち上げまで面倒を見てくれる. 何が嬉しいのか
ども、大瀧です。 Dockerコンテナをデプロイするツールが欲しいという理由でAWS OpsWorksとの組み合わせを以前のエントリーで紹介しましたが、今回は別のアプローチでデプロイを行うGearDを試してみました。 GearDとは GearDは、Red Hat社が開発するDockerコンテナを管理するCLIツール兼エージェントです。 最近、ITニュースサイトのPublickeyで紹介された、Project Atomicのコンポーネントの1つです。Project Atomic自体はRHELベースの軽量Linuxディストリビューション(Atomic Host)を前提とするものですが、GearDは独立した造りになっており、Fedora 20およびRHEL 7-Beta(EPEL経由なのでサポートなし)で動作します。 ブログ記事 : GearD: The Intersection of PaaS
Dockerのための軽量OS「Red Hat Enterprise Linux Atomic Host」、Red Hatが発表 Red Hatは、Dockerコンテナの運用に最適化した軽量なOS「Red Hat Enterprise Linux Atomic Host」を、今年リリース予定の「Red Hat Enterprise Linux 7」と合わせてリリースすると発表しました。 Red Hat Enterprise Linux Atomic Hostは、Red Hat Enterprise Linuxの派生OSであるため、Red Hat Enterprise Linuxと同レベルの信頼性、セキュリティ、使い勝手などを備えつつ、Dockerのコンテナの実行や運用に絞って軽量化することでオーバーヘッドを小さく、さらにパッチなどの運用の手間を小さくするとしています。 Dockerとの相互運
Deploy and Manage Your Containers in the Next-Generation Container OS Use immutable infrastructure to deploy and scale your containerized applications. Project Atomic mainly comprises Atomic Host, Team Silverblue, and various container tooling. cloud native platforms. Twitter Facebook Google+ RSS Atomic Host Atomic Host provides immutable infrastructure for deploying to hundreds or thousands of se
Docker 0.10が出たので例によってリリースドキュメントをざっくり翻訳してみました。間違い等見つけたら指摘お願いします! 個人的には日本人開発者が増えてきて嬉しい限りです:) Docker 0.10のアップデートまとめ:バグ修正たくさん、シグナルハンドリングの修正、TLS認証サポート、Systemdプラグインサポート 翻訳元:http://blog.docker.io/2014/04/docker-0-10-quality-and-ops-tooling/ Docker 0.10: 品質とOps Tooling 今日はDocker 0.10をご紹介させていただきます。お気に召して頂けると幸いです! 私たちは、今回のリリースにコントリビュートしてくださいましたすべての素晴らしいコミュニティの人たちに御礼申し上げます: Tianon Gravi, Alexander Larsson, V
Dockerを便利に使うためのaliasをつくった tcnksm/docker-alias いろいろなひとのTipや,自分がやったやつの寄せ集めで作った.以下で使えるようになる. $ curl -fsSL https://raw.github.com/tcnksm/docker-alias/master/zshrc >> ~/.zshrc && source ~/.zshrc コンテナの起動 インタラクティブモードでコンテナを起動する. alias dki="docker run -i -t -P" $ dki base /bin/bash デーモンモードでコンテナを起動する. alias dkd="docker run -d -P" $ dkd base /bin/echo hello コンテナの情報 最後に起動したコンテナのIDを取得する. alias dl="docker ps -l
CoreOS の提供してくれる etcd と fleet を少し触って見たのでまとめることにします。 あんまり頑張って CoreOS のドキュメントを読んでいないので理解に間違いがある可能性があるので、編集リクエスト大歓迎です。 詳細なエントリー @mopemope が書いてくれています。詳細に知りたい方はコチラを読むと良いです。 入門と書いてある割にまったく入門ではないので注意。 CoreOS 入門 - Qiita CoreOS は Docker を提供してくれる便利 OS というイメージが広まってますが、それはあまり適切ではありません。 CoreOS はクラスター機能を持っているモダンな Linux です。もちろん Docker も入っていますが、それはベースの一つというだけです。Docker を使うだけなら Ubuntu に Docker をインストールして使う方が良いでしょう。 C
こんにちは、Docker 0.91 が出ましたね。 CoreOS でのデータの置き場所をどうすべきか考えていた時に、CoreOS-devで出ていた話です。 なので知っている人は知ってるかも知れません。 全てにおいて使えるパターンではないのですが、運用形態のひとつとして紹介します。 (もちろん、Dockerはどんどん進化しているのでこのパターンは陳腐化する可能性もあります) データの永続化の問題 Docker で悩ましいのはデータの永続化をどうするか?というとこでしょうか. 例:mysql のコンテナを立ち上げる -v オプションをつけて mysql のデータを永続化していますね。 さてこれはこれでよいのですが、Docker の旨みを活かせていませんね。 Docker の特徴はコンテナであり、コンテナにするとポータビリティがあげられるわけです。 上記の方法だと Volume でホストにべった
Serf 虎の巻 サービスディスカバリーとオーケストレーション用のツールであるSerfについてまとめた.基本的には公式のHPのGetting Startの抄訳.Vagrantで試験環境を立てて実際に触りつつSerfを使い始められるようにした. 目次 Serfとは Gossip protocolとは 試験環境の準備 クラスタの形成 クラスタからの離脱 イベントハンドラ カスタムイベント カスタムクエリ コマンド一覧 参考 Serfとは Serfはサービスディスカバリーやオーケストレーション,障害検出のためのツール.Vagrantの開発者であるMitchell Hashimoto氏により開発が進められている.SerfはImmutable Infrastructureの文脈で登場してきたツールであり,Immutableなシステムアーキテクチャー,デプロイを実現する上で必須のツールである. Imm
Dockerにはimageを登録しておくためのregistryが用意されていて、https://index.docker.io/ にPublicなイメージを登録しておくことが出来ます。また、社内用など、Publicには出したくない時も自分でregistryを立てることが出来ます。そこで、今回は社内用Docker Registryの立て方について書こうと思います。 https://github.com/dotcloud/docker-registry を参考にします。 Docker Registryを立ち上げる 立てるのはすごく簡単で、docker runするだけでした。 $ docker run -p 5000:5000 -d stackbrew/registry これで実行したhostの5000番portにDocker Registryを立てることができます。 ここに対して、pushやp
OrchardにDockerアプリケーションをデプロイ Orchardは,Docker as a ServiceなDocker専用のホスティングサービス.[DigitalOcean]()のように時間単位の課金で利用できる.DigitalOceanより若干高いが,512MB RAM/20GB SSDであれば,1時間1円/月1000円程度で利用できる. 同様のサービスには,StackDockがある.またDockerをサポートしているプラットフォームとしては,Google Compute EngineやDigitalOceanなどがある.これと比較してOrchardがよいと感じた理由は以下. シンプル.専用のコマンドラインラッパーを使って,いつも通りのDockerコマンドをローカルから発行するだけでbuild/runが実行できる(StackDockはWebコンソールにDockerfileを書く)
Docker TIPS あれこれ Docker を使っているとアレどーすんだっけ?って探しまわることが多いのでここにまとめておこうと思います。 随時更新予定です。 先日のまとめの分も再度記載しておきます。 基本、ホストは ubuntu-server 12.04、コンテナ側は普段使いしている13.10前提で記述しています。 docker のイメージ格納先を変更したい apt で docker をインストールしている人がほとんどだと思います。 デフォルトでは /var/lib/docker になります。 # Docker Upstart and SysVinit configuration file # Customize location of Docker binary (especially for development testing). #DOCKER="/usr/local/bi
FC2ブログがオープンソースになったと聞いたので、Dockerfileの作成練習も兼ねてDockerで構築してみた。ソースはこちら。 https://github.com/matsuu/docker-fc2blog/ ベースOSとしてCentOS版とUbuntu版を用意した。 工夫したこと Link Containerを使ってMySQLとApacheを接続している できるだけ環境変数でパラメータを渡せるようにした できるだけDockerfileファイルにすべて収まるようにした 複数のApache/MySQLが起動してもできるだけ大丈夫なように調整(かぶるのは外向けの80番ポートのみ) ここ数日で身につけたノウハウをすべて注ぎ込んでみた 作ってみてわかったこと FC2ブログのdomain(Cookie)周りがアレな実装なのでドメイン名を渡す必要があってアレ HTTP_HOSTを使うようにした
Dockerコンテナ間のlink,database.ymlの書き方 DockerはLinksというコンテナ同士の連携を簡単に行う仕組みをもつ. これは,DB用のコンテナとアプリケーション用のコンテナの連携を行いたいときなどに有用になる. 例えば,1337ポートがEXPOSEされたcontainer1という名前のコンテナとの連携を行いたいとする. このとき以下のように,-link 連携したいコンテナ名:エイリアス名で新しいコンテナを起動すると, そのコンテナ内に連携したいコンテナのポート番号やIPをもった環境変数が現れる. docker run -d -link container1:alias user/sample bash root@48408a38c9b2:/# env ALIAS_PORT_5432_TCP_ADDR=172.17.0.2 ALIAS_PORT=tcp://172.
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く