以前にこの質問をしたことがあり、より良い回答を得るために改善します。 Java Webアプリを作成する予定であり、ここに機能を追加したいのですが、この機能についてのヘルプが必要です。
ブラウザにオペレーティングシステムを実行している仮想マシンを含めるか、Linux bash端末のみを含めたいです。ユーザーがコマンドを作成したり、操作を実行したり、immersivelabs.comなどの一部のサイトで見たことがあります。それはどのように見えますか?ブラウザで動作するオペレーティングシステムであり、タスクを正しく完了するとスコアが得られます。
以前の質問では、Apache Guacamole、noVNC、およびShellinaboxについて見てみました。 Webアプリを使用して設定する方法を知りたいです。個々のコンテナ/VMをシャットダウンし、そのゲートウェイをオンにする必要がありますか?ユーザーごとに少なくとも1つが必要です。このような複数のコンテナをホストできるサービスはありますか? Webサーバー、Tomcatで実行できるもの、または自分のシステムで試すためにローカルで実行できるAPIです。
アドバイスやアドバイスをいただきありがとうございます。
答え1
記載されているImmersive Labs Webサイトには、その状況が記載されています。サポートページ100%クラウドベースです。その後、クラウドにバックエンドシステムがあり、アプリケーションがブラウザにそれ自体含まれていないと合理的に想定できます。
したがって、このアーキテクチャを複製するには、リモートシステムを実行してWebインターフェイスを使用して接続する必要があります。リモートシステムは仮想マシンまたはコンテナです。仮想マシンは、リソースの面では「重くなりますが」インスタンス間でより優れた分離を提供します。コンテナはその逆です。リソースを少なくしますが、どのように共有されます。アクティビティが互いに分離されるように、ユーザーごとに1つのインスタンスを使用することをお勧めします。
コンテナを使用することにした場合は、Dockerを使用して直接管理できます。それでもREST APIだから簡単に統合できます。
フロントエンドの場合は、すでに述べたオプション(Guacamole、NoVNCなど)を見てください。 Javaを使用する予定なので、Apache Guacamoleが適しています。その建築物を見ることができます。ここ。