ページ

2014/05/02

[Docker] Dockerfileのサンプル

|
勉強のために、そしてCIやら色々使い方を考えるためにテンプレートとして
リポジトリを作成。
https://github.com/ksoichiro/dockerfiles
さらに最後には index.docker.io に登録してみた。

以下その内容。

OpenJDK7

Javaが使えるというだけですが・・。
https://github.com/ksoichiro/dockerfiles/tree/master/openjdk7
こちらに登録中。
https://index.docker.io/u/ksoichiro/openjdk7/
"docker pull ksoichiro/openjdk7" でプルできます。

Android

Android SDKが使えるコンテナ。Jenkinsでのビルドに使えそう。
https://github.com/ksoichiro/dockerfiles/tree/master/android
こちらに登録中。
https://index.docker.io/u/ksoichiro/android/
"docker pull ksoichiro/android" でプルできます。

Android + エミュレータ

Android SDKとエミュレータ(ARM)が使えるコンテナ。
https://github.com/ksoichiro/dockerfiles/tree/master/android-emulator
エミュレータを実行するスクリプトはENTRYPOINTになっているだけなので、
docker runしてからしばらくは起動待ち。。。
それでも、ホスト側の環境を汚さずにAndroid上でのテストができるので
これもCIに使えそう。
(頻繁な実行は厳しいが・・・)

こちらに登録中。
"docker pull ksoichiro/android-emulator" でプルできます。

エミュレータについては、例えばGradleでビルドしているプロジェクトなら
以下のように使える。

cd /path/to/project
docker run -t -i -v `pwd`:/workspace ksoichiro/android-emulator start-emulator "./gradlew connectedAndroidTest"

VOLUMEとWORKDIRの設定がしてあり、dockerのコンテナ内では/workspaceがプロジェクトフォルダになる。
/opt/android-sdk-linuxにインストールされたAndroid SDKを使って/workspaceのプロジェクトをGradleでビルド・テストすることになる。

0 件のコメント: