Appsmith
Appsmithは、内部ツールやアプリケーションを構築するためのオープンソースのローコードプラットフォームです。コードを書くことなく、アプリケーションを構築および展開するためのシンプルなインターフェースを提供します。
Appsmith の紹介
Appsmith は、あらゆるデータソースと連携する UI の構築を簡単にします。簡単な CRUD アプリから複雑な多段階ワークフローまで、いくつかの簡単なステップで何でも作成できます:
- データソースの接続:データベースまたは API と統合します。Appsmith は、最も人気のあるデータベースおよび REST API をサポートしています。
- UI の構築:組み込みのウィジェットを使用してアプリのレイアウトを構築します。
- ロジックの記述:エディタ内のどこでもクエリと JavaScript を使ってビジネスロジックを表現します。
- コラボレーション、デプロイ、共有:Appsmith は Git を使用したバージョン管理をサポートしており、分岐を使って変更を追跡およびロールバックしながら、協力してアプリを開発できます。アプリをデプロイし、他のユーザーと共有できます。
公式ウェブサイト: https://www.appsmith.com/
プロジェクトアーキテクチャ
- 永続化データベース:MongoDB Duplica Set 単一ノード(高可用性のために複数ノードに拡張可能)
- キャッシュ:Redis 単一ノード
- メインアプリケーション:Appsmith Community Edition(Appsmith-CE)
プロジェクト内サービスの起動プロセス
- 最初に MongoDB と Redis サービスを起動し、両方が起動した後に appsmith-ce サービスを起動します(appsmith-ce サービスの起動前に短時間「未知」状態が発生します)。
- MongoDB が初期化されているかを 1 秒ごとにチェックし(mongosh を使ってローカル接続で判断)、ログに「MongoDB サービスの初期化完了を待機中...」と出力します。
- MongoDB サービスが起動した後、/etc/mongo-init.sh スクリプトが自動的に実行されます(このスクリプトは「設定ファイル」に設定されています)。以下の機能を実行します:
- 単一ノードの Replica Set の設定
- appsmith データベース、appsmith ユーザーの作成、および作成したユーザーへの必要な権限の付与
- スクリプトの実行が完了した後、Appsmith サービスは自動的に作成された appsmith ユーザーを使って MongoDB の appsmith データベースを操作します。
- appsmith-ce サービスが MongoDB データベースに正常に接続した後、サービスの読み込みが開始されます。初回の読み込みには時間がかかることがあり、外部 IP アドレスの設定(必要なコンポーネントのダウンロード)が必要です。読み込みが完了するまでしばらくお待ちください。
- 読み込みが完了した後、appsmith-ce の外部 IP アドレスを使って Web インターフェースにアクセスし、Appsmith を使用開始できます。