Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?
去年あたりから急激にDockerが騒がれてますな〜と ここいらで本気で慣れておきたいところなので、Dockerコマンド〜Dockerfileの作成をまとめてみました。 Dockerとは Docker Inc. がオープンソースで開発しているコンテナ型仮想化技術、ソフトウェア。 各コンテナは独立した環境になっており、その中でアプリケーションをパッケージング、デプロイ、実行することができる。 また、このコンテナは簡単に再利用することが出来、コンテナを複数起動することにより容易にアプリケーションサーバを複数実行することが可能。 Dockerfileに設定を記述していきコンテナを構成していく。GO言語で記述できる。 コンテナとは 一つのホスト上で複数の隔離されたLinuxシステム(コンテナ)を走らせる、OSレベルの仮想化ソフトウェア。 VMに比べ、消費リソースが少い、起動が早い、オーバヘッドが少い
VagrantとDockerの理解がどうも曖昧だったので整理するために、それぞれどうゆうものなのかをまとめました Vagrant Vagrantとは、違う環境に移行可能な開発環境を簡単に構築・管理し、配布することができる仮想開発環境構築ソフトウェア。仮想マシンの構築手順を'Vagrantfile'という設定ファイルに記述する。 VagrantのパッケージにはRubyの実行環境が含まれているので、Rubyをインストールしなくても使用可能。 VirtualBoxやVMWareといった仮想環境の上に仮想マシンを構築して利用する。 *1.0.x系はrubygemsでも公開していたが、現行ではパッケージからインストール形式を取っている 公式サイト 主要なコマンド Vagrantfileに記述した設定に従い仮想マシンを起動
技術部の鈴木 (id:eagletmt) です。 クックパッドでは一部の Web アプリケーションサーバで Docker が使われており、今回はそのデプロイ方法について紹介します。 Docker で Web アプリケーションをデプロイするときには、まだまだベストプラクティスがある状況ではありません。 たとえば、どのように無停止でデプロイするか、どのようにコンテナと通信するかといった問題があります。 最初に Apache Mesos と Marathon などのツールを検証しましたが、クックパッドの環境において使いやすそうなものはなく、最終的に自前でデプロイのしくみを作ることにしました。 しかし Docker 周辺のツールは様々な新しいものが出てきている最中です。 今はまだベストなものが無いけれども、近いうちによりよいものが出てくるかもしれません。 そのため、できるだけ単純なしくみにしておく
2015年4月16日にDocker 1.6がリリースされました。Docker本体のみならず、Docker社が面倒を見ている各種周辺ツールも一斉にタグがうたれています。Docker社のBlog記事から要点をまとめます。 本題に入る前に、今のDockerファミリーのソフトウェアたちを列挙しておきます。 Docker Engine: Dockerコンテナを動作させるエンジン Docker Registry: Dockerコンテナイメージを保持するサービス Docker Compose: Dockerオーケストレータ Docker Swarm: 複数Dockerホストを抽象化 Docker Machine: Dockerホストを様々な環境に作成・管理する 参照元のDocker社のBlog記事はこちら Docker 1.6: Engine & Orchestration Updates, Regis
2014年の後半あたりからDocker,Docker Inc.への批判を多く見かけるようになった(もちろんもともと懸念や嫌悪を表明するひとはいた).それを象徴する出来事としてCoreOSチームによる新しいコンテナのRuntimeであるRocketのリリースと,オープンなアプリケーションコンテナの仕様の策定を目指したApp Containerプロジェクトの開始があった. CoreOS is building a container runtime, Rocket 批判は,セキュリティであったり,ドキュメントされていない謎の仕様やバグだったり,コミュニティの運営だったり,と多方面にわたる.これらは具体的にどういうことなのか?なぜRocketが必要なのか?は具体的に整理されていないと思う.これらは,今後コンテナ技術を使っていく上で,オーケストレーションとかと同じくらい重要な部分だと思うので,ここ
Docker Meetup Tokyo #4 にて「Docker Performance on Web Application」という題で発表しました。 発表内容は、下記の2つの記事をまとめたものに加えて、最新バージョンの Docker 1.4 での ISUCON ベンチマークと、storage-driver として Device Mapper + Docker 1.4 から実装された OverlayFS を試しました。 Dockerは速いのか?Dockerのパフォーマンスについて重要なことは何か? - ゆううきブログ ISUCONでNginxとMySQLをDocker化したときのパフォーマンス - ゆううきブログ この記事は、上記2記事で、いくつか難しいポイントがあったとフィードバックをいただいたので、Docker Meetup での発表内容を少し詳しめに説明したものになります。 1.
Docker Advent Calendar 2014 12/25 の記事、本気で使う Docker です。 ということで、実際に弊社で Docker を使った運用を開始した際にはまったところや、悩んだ所、どういう風に使っているのかについてぱらぱらっと書こうと思います。 "本気" なぜ Docker を使うのか、というと、僕の中では以下のような理由があります。 すべてのアプリケーションを(インフラ的に)同じ方法でデプロイ、管理したい 特定のサーバー / インスタンスの状況に依存することなく、アプリケーションの依存とインフラ都合の依存を別管理したい Docker なんかかっこいいっぽいし使ってみたい 上記のような都合から、どうやって作っていくかを考えていきます。基本的には1番目と2番目の理由が重要です。 Docker コンテナのいいところ とある Rails アプリケーションをデプロイするた
私はこのところしばらく仕事でVMやコンテナを扱っていましたが、大学のいくつかのプロジェクトでJavaのコードを書かなければならないときは未だにvimを使用せず、新たに本格的なIDEをインストールしなければなりませんでした。これにはいつもイライラさせられていましたが、ついに今週、Dockerコンテナ内でNetBeansを実行できるようになったのです。それによって普段使用しないJavaのコードを書くための膨大な環境をパソコンにインストールしなくて済むようになりました。 Dockerコンテナ内でGUIアプリケーションを実行する場合には、いくつかの方法があり、 X11転送を行うSSH や VNC を使用します。しかし私が発見した最もシンプルな方法は、X11のソケットをコンテナと共有して、直接使用するというものでした。 このアイデアはとてもシンプルで、以下の Dockerfile を開始点として使用
本記事の内容はWEB+DB Vol.88 Perl Hackers Hub 第34回 に「DockerによるPerlのWebアプリケーション開発」という記事にまとめなおしていますのでそちらをご覧ください。 「Perl Hackers Hub」では、「DockerによるPerlのWebアプリケーション開発」と題して@y_uuk1さんにご執筆いただきました!Dockerの基本的な考え方からPerlのWebアプリ向けのDockerfileの書き方まで、実践的な内容です! #wdpress— WEB+DB PRESS編集部 (@wdpress) 2015, 8月 22 この記事は Perl Advent Calendar 2014 の19日目の記事です。 Plack/Carton で構築したモダンな Perl の Web アプリケーションの開発環境を Docker 化するための試行錯誤を紹介します
Dockerレジストリ は、今やあふれんばかりの状況です。これを書いている時点で、”node”と検索すれば、1000件弱の結果がヒットします。どうやって選べばいいのでしょうか? いいDockerイメージを構成するもの いい悪いは主観ではありますが、私がいいと考えるDockerイメージには、いくつかの基準があります。 実用的: 以下に例を挙げます。 最初にコンテナにアップデートを適用しなくても、Android SDKのイメージがプロジェクトをコンパイルできる。 MySQLのコンテナが、データベースとユーザを使用してサーバをブートする方法を明示する。 最小限: コンテナの利点は、アプリケーションをサンドボックスできること(セキュリティがない場合には、ホストファイルシステム上で混乱を避けられること)です。ホストシステムにnode.jsをインストールしたり、JDK(Java開発キット)でシステムを
先日、CoreOS がRocketというコンテナ実行エンジンを発表して話題になりますた。 Rocketを少し触ってみたので簡単なまとめを書いておこうと思います。 チュートリアル 簡単にRocketでコンテナ起動までをやってみましょう。 簡単にREADMEに目を通しておくことをすすめます。 今回はfilesetを作るのがめんどいのでDockerコンテナを流用します。 そのためDockerをインストールしておきます。 インストール 早速Rocketをインストールしてみましょう。 ビルドするには以下のものが必要です。 cpio squashfs-(util) go-bindana (他にもあるかな?) 少し前までgo-bindataがらみでメモリが足りずにビルドによく失敗していましたが、今は修正されています。 (8Gでもビルドできない) bin以下にrktなどが作成されるはずです。 App Co
以前、 OpenVz コンテナだった私の” ホームクラウド “と、 私があらゆるビルドに関して”ビルドサーバ”のリビルドを推奨するようになったワケ について書きました。 Docker はあっという間に私のお気に入りのツールに仲間入りしました。限りなく静的なサーバ環境を作り出す繰り返し可能なビルドを作成するという考え方が気に入ったからです。 今回は、私がDockerを使用する中で繰り返し現れるようになったいくつかのパターンを説明します。どれも特段に目新しいものでも非常に驚くようなことでもありませんが、皆さんにとってそれが役立つものであり、また皆さんがDockerを使用する中で遭遇するパターンについても聞くことができれば幸いです。 私がDockerを使って色々なことを試す根本にあるのは、データを喪失することなくDockerコンテナそのものが自由に再作成できるよう、ボリュームにあり続ける状態を維
Linuxをサーバ用途に使う場合、クリーンな環境を保つため、XやGNOMEなどをインストールしないことが多いと思います。とはいえ、ちょっとした調査などでデスクトップ環境があれば作業効率が上がるケースもあります。そこで、Dockerを使って、独立した環境でLinuxデスクトップを使えないか調べてみました。 結論としては、XfceやLXDEなら動作しました。GNOMEやUnityは動作しませんでした。日本語入力は要調査です。 とりあえず、DockerでUbuntu Desktopを使うための手順を残しておきます。参考まで。 暫定手順 新しいコンテナを実行します。 docker run -p 5901:5901 -it ubuntu:latest /bin/bash コンテナ内で以下を実行します。 apt-get update apt-get install xfce4 tightvncserv
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く