コンテンツにスキップ
JelinaJelina Documentation技術ドキュメント
公式サイトに戻る

最初のアプリケーションのデプロイ

JelinaOS のアプリケーションデプロイは、**Release(リリース)**を中心に行います。リリースでアプリケーションを定義してデバイスへ配信すると、デバイスエージェントが自動でインストール・実行します。このページでは最初のデプロイを説明します。

方法 1:コンテナアプリケーションのデプロイ

Section titled “方法 1:コンテナアプリケーションのデプロイ”

開発環境でアプリケーションをコンテナイメージにビルドし、イメージレジストリへプッシュします。

Terminal window
docker build -t registry.example.com/demo-app:1.0.0 .
docker push registry.example.com/demo-app:1.0.0

JelinaCloud でリリースを作成し、コンテナアプリケーションのイメージ、再起動ポリシー、ポート、環境変数などを設定します。詳しくは JelinaCloud Release の作成を参照してください。

対象フリートまたはデバイスへリリースをデプロイすると、エージェントが自動でイメージを取得してアプリケーションを実行します。デバイス上で確認します。

Terminal window
docker ps # アプリコンテナが稼働中

方法 2:ネイティブアプリケーションのデプロイ

Section titled “方法 2:ネイティブアプリケーションのデプロイ”

手順 1:プログラムパッケージの準備

Section titled “手順 1:プログラムパッケージの準備”

スクリプト、バイナリ、依存ファイルなどをパッケージ化し、社内ファイルサーバーなど、デバイスがアクセスできるダウンロード先に配置します。

手順 2:リリース内でプログラムを宣言

Section titled “手順 2:リリース内でプログラムを宣言”

JelinaCloud でリリースを作成し、非コンテナプログラム(ProgramSet)とパッケージのダウンロード先を指定します。

programs:
demo-app:
uri: http://files.example.com/demo-app/run.sh # プログラムパッケージのダウンロード URL
command: run.sh
running: true
restart: always
environment:
MODE: production

ネイティブアプリケーションパッケージのアップロードを含む詳細は、JelinaCloud Release の作成を参照してください。

リリースをデプロイすると、エージェントがプログラムをシステムサービスとして登録し、起動します。

Terminal window
systemctl list-units 'jelinvisored_*' # プログラムサービスが稼働中
確認項目 コマンド
コンテナアプリケーションの状態 docker ps
ネイティブプログラムのサービス systemctl list-units 'jelinvisored_*'
デバイスの全体状態 jelina-info
アプリケーションログ docker logs <コンテナ名> / journalctl -u <サービス名>
  • 更新:クラウドで新バージョンを公開してデプロイすると、デバイスが自動でアップグレードします。
  • ロールバック:元のリリースを再指定すると、デバイスが前のバージョンへ戻ります。
  • A/B とリリース機構により、更新を安全に制御できます。