DockerのVOLUMEの挙動がよくわからなくてはまっていたので、色々とテストしてみました。 VOLUMEがどんなもんなんだろというのが理解できたような、変更入りそうな感じだなーと思いつつテストしてみました。 テスト1 VOLUMEはビルド時に影響をあたえているのか!? FROM base MAINTAINER yoshiso VOLUME ["/data"] RUN mkdir /data RUN echo "test" >> /data/test.txt CMD ["/bin/bash"] 結果、 mkdir: cannot create directory `/data': File exists というエラーがビルドの段階で発生。VOLUMEを定義した段階でディレクトリが生成されるようではあります。 テスト2 ビルドする際に、VOLUMEディレクトリにファイルは追加できるのか!?
このエントリは 2014-05-07 に書かれました。 内容が古くなっていたり、もはや正しくないこともありますので、十分検証を行ってください。 連休を使って docker で遊んでましたので、 簡単な使い方などなどを書いてみます。 本記事での目標は、docker 上で GitBucket を 動かしてみることです。 ちなみに、GitBucket は Scala で書かれている Github クローンです。 それでは始めていきましょう。 docker setup 今回は、Ubuntu 14.04 (x86_64) な環境を用意しました。 32 bit 版は docker がサポートしていないので注意です。 % uname -a Linux raptor 3.13.0-24-generic #46-Ubuntu SMP Thu Apr 10 19:11:08 UTC 2014 x86_64 x
簡単に手順をまとめると Dockerfileにimageのつくりかたを書く docker buildでimageをビルドする 2でつくったimageにdocker tagで名前をつける sshでつなぐためにIPアドレスを調べる docker runでcontainerを起動 docker portで起動したcontainerの22番ポートはどのポートからNATされているか調べる 4,6で調べたIP, portにsshで接続する 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 $ cat Dockerfile FROM ubuntu
ちょっと前から Docker を使っているので、その話。 Dockr について Docker は dotcloud がオープンソースで公開している、コンテナ技術による仮想化ソフトウェア。 以下のテクノロジーベースにしている: LXC 前にも書いた。Xen とか VirtualBOX みたいにホスト内に仮想マシンを立ち上げるんじゃなくて、ホスト内の隔離された環境で仮想マシンを動かす技術。物理マシンをシミュレーションしているんじゃないってことは、VPS とか EC2 とかの仮想マシン上でも問題なく動くし、マシンを起動するプロセスが不要となるので、一瞬で使い始められるというメリットにつながっている。 AUFS UnionFS(ディレクトリを重ね合わせることができる)の実装の一つ。元の仮想マシンイメージを書き換えないで、更新が発生した部分は別の場所に書き込んでいくようになっている。これにより、仮想
dockerを使って複数のWEBサーバーを立ててみたいと思います。 複数の外部ポートを使うため、プロキシとしてnginxと併用してみます。 今回は2つのWEBサーバーのコンテナを立て、1つにはwordpress on apache、もう一つは素のnginxを入れてみます。 コンテナにはそれぞれ memorycrat.cloudpack.jp tenkaippin.cloudpack.jp というドメインを割り当てます。 また、sshも立ちあげます。 今回はDockerfileを使ってイメージを構築します。 それぞれのコンテナのDockerfileとsupervisorの設定ファイルテンプレートは以下の様にホスト側に配置しておきます。 $ tree . . └── templates ├── memorycraft │ └── conf │ ├── Dockerfile │
Dockerすごい面白そうです。 最近ハッカソンに行ったりして、プロダクション環境へのデプロイ周りですごいはまった。特にお金もない自分は1つのサーバーの中にいろいろとアプリケーションをデプロイしちゃっている訳ですが、もうごちゃごちゃになって触りたくなくなりそう...。新しくサーバーをデプロイしたいけども、既存のサービスまで影響が及ぶ危険性もあり、めんどくさいなー。あと、あとできっと破棄するだろうけど、もとに戻すこともかなりめんどくさいし、そんなことやりたくないしなー。もっとアプリケーション毎に気軽に(そしてお安く)デプロイ出来ればいいのになー。 と思っていた訳ですが、最近Dockerというものを目にしまして。 Docker, Mesos, Sensu等を利用したBlue-Green Deploymentの仕組み 本番環境のBlue-Green Deploymentの仕組みのプロトタイプを作
昨年からImmutable Infrastructureという言葉が出始めて、サーバーを簡単に作って壊すという潮流が出始めました。また、サーバー管理を簡単にするツールとしてDockerというものが脚光を浴びており、いまどきのサーバー管理者に受け入れられてきました。 今回は、そのDockerをインストールしてLAMP環境を構築するステップを見ていきたいと思います。 Immutable Infrastructureとは? IaaS型のクラウドやVPSの台頭によって、簡単に仮想サーバーが立ち上げられる環境が整ってきました。 とはいえ、サーバーの立ち上げをするのはシステム構築時と、システム規模を大きくする時に限られ、サーバーの動作を変えたり、アプリケーションのアップデートをするときは、稼働しているサーバーの中身を修正するというのが従来のやり方でした。 しかしImmutable Infrastruc
Docker 0.8がリリースされてMacが公式サポートされたのはいいのですが、公式のインストール方法が複雑で、homebrewにはまだ入ってない状態でした。 boot2dockerをhomebrewに入れるpullreqは、依存関係のdockerがhomebrew-binaryにあることからかなり頓挫してたところへ、颯爽とdockerメンテナが現れて、ソースからのビルド方法を書いていったのが今回のハイライト。 そしてソースからビルドしたdockerのpullreqも無事にhomebrew本体に入り、boot2dockerもHomeBrewに入りました。いやー。Macユーザには嬉しいですねぇ。 これでMacでDocker0.8のインストールが非常に簡単になりました。 $ brew update $ brew install boot2docker # <- dockerホストv0.8 (依
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く