先日iPhone上にWebサーバを作ってローカル環境に配信しましたが、せっかくならもっとiPhoneで遊びたい!と思い色々調べてみました。
そこで見つけたAlpine Linux環境「iSH Shell」をご紹介します。
「WorldWideWeb」アプリのご紹介はこちら→https://fanblogs.jp/pechemhlkt1007/archive/361/0
ざっくり言うと
・iOSアプリでLinux環境を使える「iSH Shell」
・使えるのはAlpine Linux環境
・iOS標準「ファイル」アプリでディレクトリ管理が可能
・ApacheもOK!でもiOS仕様的にサーバ用途は厳しいかも
iOSアプリでLinux環境を使える「iSH Shell」
iOS上で動くLinuxエミュレータですね。アプリ上にLinux環境が作れるのは素晴らしいです!
AndroidにあるLinuxエミュレータ環境は、シンボリックリンクエラー等に悩まされますが、iSH Shellはすごく素直にやりたいコマンドが通ります。
IMEはiOS標準のままなので、一部コマンドは打ちにくいかもしれません。
使えるのはAlpine Linux環境
Alpine LinuxはDocker上で動く軽量Linuxです。最近は「使うな!」と言われがちですが、十分使えるLinuxです。
一つだけ、パッケージマネージャがちょっとクセありなコマンド「apk」になります。
aptやyumと違い、インストール時のオプションが「add」になります。
幸いupdateとupgradeは同じですので、addだけ慣れれば十分使えます。
・apk add パッケージ名
例:apacheをインストールする場合 apk add apache2
iOS標準「ファイル」アプリでディレクトリ管理が可能
iSH Shell内のファイル領域は、「ファイル」アプリで操作することができます。iCloud Drive等からファイルをコピペしたりフォルダを作成することができますので、他の環境からGUIを使ってファイルを持って来て、出先でちょっとした動作確認できます。
ApacheもOK!でもiOS仕様的にサーバ用途は厳しいかも
iOS上でiSH Shellを利用中アプリとして開いていればサーバ用途も果たしてくれます。Apacheは、iSH Shellインストール済のiPhoneをテザリング親機にして、テザリング子機からiPhoneへブラウザでアクセスすれば、構築済みサイトを開くことも可能です。
iOSの仕様上、アプリを切り替えた時点でサーバ機能が止まってしまうので、動作確認には使えますが、常時サーバ用途として使うのには不向きです。
テザリング親機:iSH Shell起動中iPhone:170.20.10.1
テザリング子機:サイト表示を確認する端末のブラウザ:http://172.20.10.1
まとめ
マニアックな中身になりましたが、出先でもLinuxに触りたいニーズの方々もいるはず!と思いながらまとめました。
軽量Linuxを覚えておけば、色々活用が広がりそうなので、移動中に楽しみたいと思います。
2024.6.6 追記 iOS標準「ファイル」アプリ上にiSHが見つからないときの対応
iSHをインストールしただけでは、iOS標準のファイラー「ファイル」アプリから操作できるようにはなりません。
以下の設定を確認してみてください。
1.「ファイル」アプリを開く
2.右上「・・・」をタップ
3.プルダウンメニューの「編集」をタップ
4.iSHのトグルボタンをオンにする(ボタンの背景が緑になればOK)
5.右上「完了」をタップ
6.iSHをタップしたら、ディレクトリが確認できればOK
以上の設定変更で、iOS標準「ファイル」アプリからiSHのディレクトリをGUIベースで操作できるようになります。
メリットはいくつかあります。
・他の環境からデータを移植しやすい
・iSH Shellでの操作が必須ではなくなる
・データをクラウド(iCloud等)にバックアップしやすい
どんなにiPhoneを使いこなしていたとしても、タッチ操作でゴリゴリ開発は厳しいと感じます。必然的に、開発中の動作検証がメインになるのではないでしょうか。
Linuxに慣れている方には不要かもしれませんが、むしろiOSのタッチインターフェイスだけでは操作しにくいときには、iOS標準「ファイル」アプリからの操作は便利です。
【このカテゴリーの最新記事】
-
no image
-
no image