🍺
Windows環境のDockerコンテナからAndroid Studioを実行してみた話
きっかけ
Windowsに直接インストールせずにAndroidStudioを試してみたいなって思いました。
手順
前提
- Windows 10
- Dockerが使用可能な状態であること
- WinGetが使用可能な状態であること
Windowsにウィンドウを表示する準備
を参考に「Vcxsrv」(Windows上で動作するXサーバー)を使用することにしました。
インストールはWinGetから行いました。
winget install marha.VcXsrv
XLaunchのアイコンがデスクトップアイコンやスタートメニューが作成されるのでそれを起動します。
設定項目は変更せずにNextを進めます。
おそらく初回はWindowsファイヤーウォールのダイアログが表示されるので許可します。
Dockerfile
に記載のLinuxのディストリビューションがUbuntuとFedoraのみだった為、一応Ubuntuのイメージからコンテナを作成することとしました。
上記に記載のあるものだけインストールして実行するとエラーして起動しなかったため、試行錯誤の末に以下となりました。
Dockerfile
FROM ubuntu:22.04
WORKDIR /tmp/
ARG ANDROIDSTUDIO_VERSION=2021.1.1.22
ENV DISPLAY host.docker.internal:0.0
RUN dpkg --add-architecture i386 \
&& apt-get update -y \
&& apt-get install -y \
lib32z1 \
libbz2-1.0:i386 \
libc6:i386 \
libfreetype6 \
libncurses5:i386 \
libstdc++6:i386 \
libxi6 \
# libxi6:i386 \
libxrender1 \
# libxrender1:i386 \
libxtst6 \
# libxtst6:i386 \
wget \
wmname \
&& cd /opt \
&& wmname LG3D \
&& wget "https://redirector.gvt1.com/edgedl/android/studio/ide-zips/${ANDROIDSTUDIO_VERSION}/android-studio-${ANDROIDSTUDIO_VERSION}-linux.tar.gz" \
&& tar -zxvf "android-studio-${ANDROIDSTUDIO_VERSION}-linux.tar.gz" \
&& rm -f "android-studio-${ANDROIDSTUDIO_VERSION}-linux.tar.gz" \
&& apt-get clean -y \
&& echo end
CMD /opt/android-studio/bin/studio.sh
現時点では特に設定するものは無いのですが普段からdocker-composeで上げ下げしているのでDockerfileと同じフォルダにdocker-compose.ymlを作成します。
docker-compose.yml
version: '3.4'
services:
as:
build: .
まとめ
Windowsで例えば別のバージョンのAndroid Studioをちょっと試したい位であれば
Windows Sandboxで事足りそうな気がしましたが、何かの参考になれば幸いです。
お疲れさまでした。
Discussion