Docker, インフラ, 仮想化, 開発

こんにちは。gendosuです。 今回は前回のDocker関連ネタから少し時間もたち、Dockerも進化を続けているのでここ最近のDocker事情、MacbookのSSD圧迫問題を再度取り上げてみます。 相変わらずDockerをしばらく使っていると不要なイメージやコンテナがたまってしまいますね。 今回はこれらを「なるべく安全」にお掃除する手順を考えたいと思います。 まずは、何を掃除したら良いのか、と言う情報の出し方 docker system df コマンド $ docker help syst ...

Docker, 仮想化

Ruby on Rails 5.1からは、Rubyだけではなく、webpackerとか使う場合にはnpm環境も必要となる。 毎回自前でDockerfileでnpm環境をインストールするのも時間がかかるので、その辺をひとまとめにしたDockerイメージを作りました。 使い方は Rails5.1のプロジェクトに Dockerfileを以下のように作成 # 本体 # # VERSION 0.0.1 FROM gendosu/ruby-for-rails-51:2.3 MAINTAINER Gen Ta ...

Docker

herokuのコマンドラインツールをDockerイメージにしてみました。 理由は、色々なherokuのアカウント(プライベートだったり仕事用だったり)を切り替えるのがめんどくさいので、各環境ごとにDockerのコンテナ内にログイン情報を持たせようと思ってやってみました。 hub.docker.comにアップしてあるので docker run --rm -v `pwd`:/app gendosu/heroku-cli heroku apps でという感じで実行出来る。

Docker, GoLang

gooseというgoで書かれたDBマイグレーションツールがあり、これだけを含んだDockerイメージを作った。 hub.docker.comにアップしてあるので run --rm -v `pwd`:/go gendosu/goose goose create example でという感じで実行出来る。

Docker

先日、Docker for macでDocker.qcow2というファイルが肥大化する件というのを書かせていただきましたが、こちらの件、Docker for macの最新版ベータにて、ある程度自動で解消されるような処理がマージされたようです。 New Data Management commands #26108 Docker for mac のベータチャンネルにも降ってきましたので、試してみました。 今回ベータチャンネルで降ってきた内容は多いのですが、その中でReclaim disk size ...

Docker, Mac

docker便利ですね。 最近そんなことばかりしか言ってない気がします。 自分がdockerを使い始めた頃は、dockerってなんなのかわからない人が多く 話すと便利そうだけどプロダクションで使う想像がつかないとか 環境がめんど臭いとか 色々言われていました。 今現在は、開発環境として使うのであれば docker for macというのがあって、これ入れるだけでかなり簡単にdockerが試せるようになりました。 環境を作るのが簡単になったのであれば、使えるdockerfileとかdocker-c ...

Docker

Docker for macのベータ版でですが、Docker for macのVMの仮想ディスクの場所を変えられるようになるようです。

Docker

Docker便利ですね。 Docker for macが出てからは、もうmac上には環境を作らない なんて運用も可能じゃないかというくらいです。 実際、サーバサイド系の環境はほぼ全てDockerで運用してます。 gulpとかでブラウザのオートリロードとかしたい場合は さすがに難しいので、そこはmac上に環境を作っておりますが。 ということで、ハードにDocker for macを使っていくと ディスク容量が日々減っていくのが実感出来るかと思います。 これは、Docker for macも実体はV ...

Docker, Mac, 仮想化

Docker for Mac bataがリリースされ、早速インストールしてみました。 アプリケーションディレクトリに入れて、このアイコンをダブルクリックするだけで Dockerの環境が自動的に構築されるようです。 メニューバーにはDockerのアイコンが表示されるようになります。 1.11以前にDocker ToolboxでDockerを使っていた場合、この初回の起動時に 既存環境を新しい環境で使えるように変換が行われます。(yesにした場合) 今回は、全く新しい環境にインストールをしているので ...

Windows, 仮想化

lxrunというコマンドがコマンドプロンプトでたたけるようになっているようで、これでオプションにuninstallを付ければ Bash on Ubuntu on Windows のサブシステム一式が削除出来るようだ。 試しに消してみた。   C:\Users\gen> lxrun /? LX サブシステムの管理操作を実行します 使用法: /install - サブシステムをインストールします オプションの引数: /y - ユーザーに許可を求めません /uninstall - サブ ...

Docker, VMWare, VMware, Windows

最近、MacとWindowsの両方で似たような環境を作って作業することが多くなった訳ですが、どうもMacと比べると色々とWindowsの場合は開発環境といった面では劣る部分が多いというのを改めて感じました。 ただこれ、Windows10は開発用途以外の場合、結構使いやすいOSだと思っています。 自分の場合はノートPCでタッチ画面付きのものなので、マウスが無くても、サッと画面をタッチできたりして便利です。 ブラウジング用途でも手でスクロール出来る&拡大縮小が出来るというのは使ってみるとかなり便利な ...

Docker

Dockerfileを作っている最中に動作確認中に途中で落ちてしまって、その状態でイメージの中身を確認したい時とかが多々あるかと思いますが 今回はそんなやり方、定番かもしれないですが書いてみようと思います。 まずは適当なDockerfileを作ってビルドします。 docker build --rm -t building . このビルド時にエラーが出てイメージの作成が止まったという想定です。 docker buildで失敗すると・・・ docker imagesには というイメージが出来ています ...

Docker, ubuntu, Vagrant

開発環境って、一度作るとあとはそれほどいじらないのでいいんですが 適当に作ったけど適当に社内で公開したい場合にお気軽にデプロイしたい。 Capistrano使ったりするのもいいんだけど...。 それに、小さめのツール類が多いんだけど、毎回nginx立ててポート変えてとかconfでゴニョゴニョして公開するの、面倒。 サクッとデプロイしたら即公開みたいな環境ないかなー。herokuみたいな。 と思って探したらdokkuというのがあったので、触ってみました。 dokkuとは OSSのherokuライク ...

Docker

こんにちは。 最近はローカルの開発環境も、ほとんどDockerに移行した感じです。 そこで、本番も見据えたDockerという事で気になることの一つ 構成管理ツール chef、ansibleなどなどとの兼ね合い、どうするかな? と言ったところ考えてみようと思います。 Dockerはコンテナ作成・管理ツールという性質上、コンテナ内部のパッケージやアプリの配備などをDockerfileで行う仕組みになっています。 ということは、端的に言ってしまうとchef、ansibleなどがなくてもコンテナを作れて ...

Docker

ここ最近のDockerの進化が早くて日々楽しいです。 で、つい先日、macでDockerを使うのが簡単になるツールが出ました。 Docker Toolbox これは、Dockerを使う上で必要なツールをまとめたインストーラになっています。   VirtualBoxも同時にインストールされます。 すでに入っていれば、上記のようにグレイアウトになります。 これは、以前Boot2Dockerで使われていたインストーラと同じ物のような感じで それに加えて Docker Machine Dock ...

Docker, Linux, Vagrant, VMware, 仮想化

$ ssh hoge@192.168.1.10 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! ...

Docker

dockerを開発環境で使うに当たって 前回「gendosu流、dockerの使い方」という内容を書きました。 その内容だと、 通常Dockerコンテナを手動で起動するには まず、Dockerfileを作って自分好みにイメージを作成 作成したイメージからdocker runコマンドでコンテナ起動 たとえば、memcachedとmysqlとredisを使った一通りの構成を手動で起動しようとした場合 それぞれにイメージ作成やdocker run(start)をして起動していかないといけないです。 コ ...

Docker, ubuntu

以前よりローカルでの仮想環境の生成・破棄は容易になったような気がしますが Vagrantでは、インスタンスの生成、破棄のコストが高い気がするので そこのところをDockerを使ってやってみるようにしてみました。 まずは、ベースになるマシンとしてUbuntu Server 14.10 64bitの仮想マシンを立ち上げます。 これは、VagrantでもVMwareでも問題ないです。 今後、頻繁にアクセスすることになるので、vmのIPをhostsに登録してしまいます。 hostsには 192.168. ...