はじめに
オンラインIDEのCloud9は環境構築不要でアプリ開発を始められて便利なのですが、それ自体がWebアプリケーションで、ブラウザ上でのUIしか提供していないため、標準ではElectronなどのデスクトップアプリは開発・実行できません。
ところが、最近Communityを見ていたら、過去の投稿でこんなものがありました。
https://community.c9.io/t/how-to-set-display-in-my-workspace/1646/22
つまり、Cloud9上でnoVNCを稼働させてしまうわけですね。やってみましょう。
インストール
すべてCloud9上で実行します。
基本的には元記事に書いてある通りにやれば躓くところはありませんでした。
インストール:
cd ~
mkdir plugins
cd plugins
git clone https://github.com/acabey/cloud9-vnc.git
cd cloud9-vnc
sudo ./install.sh
途中、パスワードを聞かれますが、VNC用のパスワードなので、新しく入力してください。Cloud9のログインとは関係ないです。
Do you wish to set password for x11vnc? (not recommended for public workspaces!) y
Enter VNC password: [パスワードを入力]
Verify password: [パスワードを再入力]
Write password to /home/ubuntu/.vnc/passwd? [y]/n y
Password written to: /home/ubuntu/.vnc/passwd
依存パッケージのインストール:
sudo apt-get update
sudo apt-get install supervisor
sudo apt-get install x11vnc
sudo apt-get install xvfb
sudo apt-get install fluxbox
sudo apt-get install novnc
ここまで出来たら、
Run > Run With > C9vnc
または
/opt/c9vnc/c9vnc.sh
を実行すると、VNCアクセス用のURLが表示されます。
アクセスすると、下記のようにnoVNCの画面が出てきます。
Connect
をクリックして、先程設定したパスワードを入力すると、Ubuntuのデスクトップが出てきます。
デスクトップアプリを動かす
electron-quick-startをインストールして実行してみましょう。
VNCが起動していれば、Cloud9のコンソールから操作できます。
git clone https://github.com/electron/electron-quick-start.git
cd electron-quick-start
npm install
npm start
すると、こんな感じでVNC側に画面が表示されます。