Dockerで爆速構築!Androidエミュレータをコンテナ化する「HQarroum/docker-android」解説


Dockerで爆速構築!Androidエミュレータをコンテナ化する「HQarroum/docker-android」解説

HQarroum/docker-android

2026-01-02

「Androidのエミュレータを立てるだけでPCが重くなる…」「CI(継続的インテグレーション)でUIテストを自動化したいけど、設定が地獄だ…」そんな胃もたれしそうな状況を、このツールがサクッと軽くしてくれますよ。

どうぞ、じっくり味わってみてください!

この docker-android は、AndroidエミュレータをDockerコンテナの中に閉じ込めたものです。何が嬉しいかと言うと…

「僕の環境では動くのに」からの解放
Dockerさえあれば、誰のPCでも、CIサーバーの上でも、全く同じAndroid環境が立ち上がります。

リソースの節約(ミニマル設計)
このプロジェクトは「ミニマル」であることを売りにしていて、余計なものを削ぎ落としています。メモリ消費を抑えたい現場には最高です。

ヘッドレス(画面なし)動作
サーバー上で動かして、テスト結果だけ受け取るといった「自動化」に特化した使い方が得意です。

まずは、下ごしらえとして Docker がインストールされていることを確認してくださいね。

まずは市場(Docker Hub)から新鮮なイメージを仕入れてきます。

docker pull hqarroum/docker-android

次に、このイメージを火にかけます(実行します)。

docker run -d \
  --device /dev/kvm \
  -p 5555:5555 \
  hqarroum/docker-android

--device /dev/kvm
これが隠し味です!ハードウェア加速を有効にするので、エミュレータが爆速になります(Linux環境で特に有効です)。

-p 5555:5555
Android Debug Bridge (ADB) と通信するためのポートを開けています。

コンテナが立ち上がったら、あなたのPC(ホスト)から繋いでみましょう。

# コンテナ内のAndroidに接続
adb connect localhost:5555

# ちゃんと認識されているか確認
adb devices

例えば、CIパイプラインの中でテストを走らせる際、以下のような設定(JSON)でコンテナ内のエミュレータをターゲットにできます。

{
  "platformName": "Android",
  "automationName": "UiAutomator2",
  "deviceName": "Android Emulator",
  "udid": "localhost:5555",
  "app": "/path/to/your/app.apk"
}

これで、あなたが寝ている間にDockerの中のAndroid君がガシガシとテストをこなしてくれるわけです。素晴らしいですよね!

ネストされた仮想化
クラウド(AWSやGCP)上のVMで動かす場合は、そのインスタンスが「仮想化支援(KVM)」をサポートしている必要があります。これがないと、エミュレータが激重になってしまいます。

アーキテクチャ
お使いのPCがM1/M2 Mac(ARM)の場合は、イメージが対応しているか確認が必要です。このイメージは主にx86_64向けに最適化されていることが多いので。

いかがでしたか?本日の解説。 これを使えば、面倒なエミュレータ管理にサヨナラして、よりクリエイティブなコーディングに集中できるはずです。


HQarroum/docker-android




脆弱性スキャンツールTrivy入門:開発者のためのセキュリティガイド

これから君たちに、素晴らしい才能を持つ役者を紹介する。その名はTrivyだ。 こいつは、映画のセットで言うところの、「セキュリティ監査の鬼」だ。 君たちが作った最高の作品(コードやコンテナ)に潜む、見えない危険を徹底的に見つけ出すんだ。 ただ見つけるだけじゃない。その危険がどこにあるのか、どうすれば直せるのか、的確に教えてくれる。 君たちの作品を、より安全に、より完璧なものにするために、こいつの演技指導は絶対に必要だ!


Dockerだけじゃない!Moby Projectで自作コンテナ環境を構築する

Moby Project ってのはな、一言で言うと「コンテナをベースにしたシステムを作るための、オープンソースのツールキット」だ。例えるなら、俺たちが事件現場で使う道具一式、例えば手錠とか懐中電灯とか、そういうのを全部まとめて提供してくれるようなもんだな。


KitchenOwl入門:Dockerで始める自己ホスト型買い物リスト&レシピ管理

こんにちは!TomBurschさんのKitchenOwl、気になりますよね。自炊派のエンジニアにとって、これはかなり「使える」ツールになりそうです。ここでは、ソフトウェアエンジニアの視点からKitchenOwlがどのように役立つのか、そして実際にどうやって導入して使うのかを、サンプルコードを交えながらわかりやすく解説していきますね。


コード探偵の事件簿:ReVancedが解き明かすアプリのリバースエンジニアリング

皆さん、こんにちは。名探偵の皆さん、お集まりいただきありがとうございます。さて、今回の事件は、とあるAndroidアプリにまつわる、巧妙に仕組まれた密室殺人事件です。被害者は、誰もが知るあの動画配信アプリ。彼は、数々の「制限」という名の鎖に縛られ、身動きが取れない状態にありました。しかし、今宵、その鎖を断ち切り、新たな命を吹き込む「パッチ」という名の秘密道具の存在が明らかになったのです。


エンジニア必見!tldr-pagesでコマンドの「わからない」を瞬時に解決

今日は、「tldr-pages/tldr」という、コマンドライン操作をグッと楽にするツールについて、ソフトウェアエンジニアの皆さんの視点から、その有用性、導入方法、そして具体的な使い方まで、分かりやすく丁寧に説明していきましょう!ソフトウェア開発をしていると、コマンドラインを使う機会は山ほどありますよね。lsとかgrepとか、基本的なコマンドは覚えていても、たまにしか使わないコマンドや、オプションがたくさんあるコマンドだと、「あれ、このオプション何だっけ?」「どうやって使うんだ?」と、いちいちmanコマンドを叩いたり、Webで検索したりしていませんか?


自動化の未来:X-PLUG/MobileAgentが変える開発現場

今回は「X-PLUG/MobileAgent」について、俺たちソフトウェアエンジニアの視点から、カラオケのコント風に楽しく、そして分かりやすく解説していくぜ!(ガラガラと扉を開けて、カラオケボックスに入る二人。一人はノートパソコンを抱え、もう一人はスマホを片手にうろうろしている。)


さよならエミュレータ!WSABuildsで実現する高性能なAndroidテスト環境の構築

でもご安心を。この MustardChef/WSABuilds は、皆さんの開発環境を劇的に快適にする、とっても実用的なツールなんです。ソフトウェアエンジニアの視点から、その魅力と活用法を分かりやすく、フレンドリーにご案内しますね!MustardChef/WSABuilds(以下、WSABuilds)は、Windows上でAndroidアプリを動作させるための公式機能である Windows Subsystem for Android (WSA) の「拡張版」と考えると分かりやすいです。


「memos」こそがアタシたちの安息の地。オープンソースでプライバシーを守り抜く、セルフホストの嗜み

最近のメモアプリって、サブスクだの広告だの、余計なお世話が多いじゃない? これはそんなのとは無縁。あんたのデータはあんただけのもの。まさに「鉄壁の純愛」みたいなメモツールなのよ。それじゃあ、ママがエンジニア視点でたっぷり可愛がってあげるから、じっくり聞いていってね!


エンジニアの空模様も快晴に!動画アプリ開発の教科書、NewPipeの世界へようこそ

今回ご紹介するのは、GitHubで非常に高い人気を誇るオープンソース・プロジェクト、NewPipeです。エンジニアの視点から見ると、このプロジェクトはまさに「快晴」のような、学びと発見の宝庫なんですよ。NewPipeは、YouTubeなどの動画プラットフォームを、公式APIを使わずに視聴できるAndroid用の軽量フロントエンドです。


もうリモートを意識しない。XPipeで実現するシームレスなサーバー管理術

お前、散らばったサーバーの鍵(SSHキー)や、どこにあるかもわからねぇDockerコンテナ、それにKubernetesのクラスターの管理で、頭がパンクしそうになってるんだろ?俺たち「裏のエンジニア」にとっちゃ、証拠を残さず、素早く、スマートにターゲット(サーバー)へ潜り込むのが鉄則だ。そこで使えるのが、この 「XPipe」 って代物さ。