TL; DR
- PixelのLinuxターミナル上にDockerコンテナでwebtopを起動
- Android側のブラウザで開ける
はじめに
Pixel上でLinuxターミナルが利用可能になりました。今後他のAndroidにも順次展開されるようです。
Qiita上でも「○○を動かしてみた」という記事が複数投稿されています。先駆者に感謝。
ところで、Linuxターミナルのアプリは現時点ではCLIしか用意されていません。そこで本記事では、GUIのデスクトップ環境を使う方法を紹介します。
バージョン
- Android 15
- Pixel 9
構成
今回はデスクトップ環境としてWebtopのDockerコンテナを使用します。
Webtopはブラウザ経由でアクセスして使用するデスクトップ環境です。Linux端末のアプリにCLIしかなくても、Android側のブラウザであればGUIが使えるという算段です。
構成は以下の通りです。
デスクトップでアクセスしているのはLinux端末が動いているVMそのものではなくコンテナです。
環境構築
では、実際にデスクトップ環境を動かしてみましょう。
Androidの開発者向けオプションを有効化する
Linuxターミナルはまだ安定版ではなく、開発者向けにのみ提供されています。使うために開発者向けオプションを有効化します。
Linuxターミナルをインストール
続いて、Linuxターミナルのアプリをインストールします。
ターミナルを開くとこんな感じです。OSはDebian, CPUはARMです。
Dockerのインストール
まずはいつものアップデートから。sudoのパスワードは不要でした。
sudo apt update
sudo apt upgrade
続いて、Dockerをインストールします。
必須ではありませんが、ユーザーをDockerグループに加えておきます。
sudo usermod -aG docker $USER && newgrp docker
Webtopコンテナの起動
Webtopコンテナを起動します。公式サイトのコマンドをそのまま使用できました。
docker run -d \
--name=webtop \
-e PUID=1000 \
-e PGID=1000 \
-e TZ=Europe/London \
-p 3000:3000 \
-v /path/to/data:/config \
--shm-size="1gb" \
--restart unless-stopped \
ghcr.io/linuxserver/webtop
3000
番ポート開放の許可を求める通知が来るので許可します。
これで、Android側(ホスト側)からコンテナへ接続可能になります。
触ってみる
Chromeで localhost:3000 にアクセスします。いよいよデスクトップ環境とのご対面です。
縦長の画面に合わせたレイアウトになっています。
タップやスワイプでのクリック、ドラッグ操作も問題なく行えます。
キーボード入力も可能です。
左側の白い矢印のタブを開き、キー
→一番左のキーボードのアイコンをタップするとスマホのキーボードが立ち上がります。
alpineベースのコンテナなので、 apk add
で好きなアプリをインストールできます。
おわりに
以上、Linuxターミナル+Webtopで、Pixel上でLinuxのデスクトップ環境を使う方法の紹介でした。Linuxターミナルにはさらに活用できそうなポテンシャルを感じているので、皆さんも遊んでみてはいかがでしょうか?