Have an amazing solution built in RAD Studio? Let us know. Looking for discounts? Visit our Special Offers page!
Delphiニュース

WSL2を使用してFMXLinuxをUbuntuへWeb配置する

FMXLinuxアプリケーションは、Webブラウザ でHTML5のWebアプリケーションとして実行することができます。このブログでは、WSL2を使用してFMXLinuxをUbuntuへWeb配置する方法について解説します。

DelphiのFMXLinuxを配布する最も簡単な方法は、Windows Subsystem for Linux(WSL)を使用することです。 Windows 10バージョン 2004(ビルド19041)の時点で、WSL2には完全なLinuxカーネルが含まれているため、デバッグなども含めてすべて期待どおりに機能します。

1. WSL2をインストール

WSL2を使用する場合にはWindows 10 バージョン2004(May 2020 Update ビルド番号 19041)への更新が必要です。Windows 10のシステム情報からOSビルド番号が確認できます。

  1. Windowsメニューの[Windows システムツール]-[コントロールパネル]を選択
  2. コントロールパネルの[プログラムと機能]を選択 (表示方法が大きいアイコンの場合)
  3. [Windowsの機能の有効化または無効化]を選択
  4. 機能の一覧から[Linux用 Windows サブシステム] にチェックオン
  5. WSL2をインストール後、OSを再起動
windows_setting_wsl-ja-1469002

2. Microsoft Store経由でUbuntuをインストール

バージョン番号のないUbuntuは現在のLTS版で、今後アップデートされます。同様にMicrosoft Store経由で他のディストリビューション(Kali、Pegwin、Alpine WSLなど)もインストールできますが、Ubuntuとはどれも少し異なります。

msstore_via_ubuntu-ja-4332064

3. Ubuntuの起動

Windowsのスタートメニューまたは PowerShell/ターミナル/CLI ウィンドウから WSL もしくは Ubuntu コマンドを使用して起動します。複数のLinuxをインストールしている場合は、WSLはデフォルトのLinuxを起動します。 初めて起動するときは、数分かかることに注意してください。そして新しいLinux資格情報の入力を求められます。

4. SetupUbuntu4Delphi21.shを実行

Delphiからターゲットにする準備をするために、Ubuntuのすべてのセットアップを行うスクリプトをgistで作ってみました。wgetを使用してダウンロードするか、コマンドを手動で入力することができます。ホームフォルダに pa21.sh というスクリプトファイルを作成し、PAServer を起動します。これを変更して、デフォルトの設定を渡すことができます。

#!/bin/bash
echo Updating the local package directory
sudo apt update
echo Upgrade any outdated pacakges
sudo apt full-upgrade -y
echo Intall new packages necessary for Delphi
sudo apt install joe wget p7zip-full curl openssh-server build-essential zlib1g-dev libcurl4-gnutls-dev libncurses5 xorg libgl1-mesa-dev libosmesa-dev libgtk-3-bin -y
echo Clean-up unused packages
sudo apt autoremove -y
cd ~
echo Downloading LinuxPAServer for Sydney 10.4 (21.0) Update 1
wget https://altd.embarcadero.com/releases/studio/21.0/1/PAServer/LinuxPAServer21.0.tar.gz
echo Setting up directories to extract PA Server into
mkdir PAServer
mkdir PAServer/21.0
tar xvf LinuxPAServer21.0.tar.gz -C PAServer/21.0 --strip-components=1
rm LinuxPAServer21.0.tar.gz
echo \#\!\/bin\/bash >pa21.sh
echo ~/PAServer/21.0/paserver >>pa21.sh
chmod +x pa21.sh
echo -----------------------------------
echo To launch PAServer type \~/pa21.sh
echo -----------------------------------
~/pa21.sh

5. GetItからFMXLinuxをインストール

getit-fmxlinux-ja-6510913

6. broadwayd サーバーの実行

上記のスクリプトによる起動で、既にPAServerを実行しているはずですが、broadwaydを起動できる新しいUbuntuターミナルウィンドウが必要になる可能性があります。新しいWindowsターミナルを使用すると、複数のタブを簡単に開くことができ、WSLとうまく統合できるのでお勧めします。

7. Delphi IDEでLinux SDKをインポート

Delphi IDEのメインメニューの[ツール]-[オプション]-[配置]-[SDKマネージャ]でLinuxで実行しているPAServerへ接続します。 PAServerのIP アドレスは、 localhost / 127.0.0.1 ですので、WSLインスタンスとホストOSであるWindows 10との間でポートを共有していることに注意してください。

options-deployment-connection-sdk-linux-wsl-ja

あとは、FireMonkyプロジェクトを実行して、Webブラウザからlocalhost:8080に接続するだけです。

1つだけ留意すべきことは、各クライアントのサーバー上で実行されているアプリの1つのインスタンスがあり、それぞれが独自のポート番号を持っているということです。 ちょっとした工夫でサーバー上で管理する方法もありますが、その方法はまた別ブログ記事で紹介いたします。

関連情報

http://docwiki.embarcadero.com/RADStudio/Sydney/ja/FireMonkey_for_Linux

RAD Studio 13.2 Florence Now Available! Kai 1.1.1 Now Available! What's Coming in RAD Studio 13.2 Florence

Reduce development time and get to market faster with RAD Studio, Delphi, or C++Builder.
Design. Code. Compile. Deploy.

Start Free Trial   Upgrade Today

   Free Delphi Community Edition   Free C++Builder Community Edition

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

IN THE ARTICLES