Comment déployer la plate-forme Appsmith Low Code avec Docker

0
141

Appsmith est une plate-forme à faible code permettant d'assembler des logiciels métier complexes à partir de composants d'interface utilisateur prédéfinis. Il se connecte à vos sources de données existantes telles que les bases de données SQL, les feuilles de calcul, les API REST et les points de terminaison GraphQL. Vous pouvez connecter ces référentiels d'informations à des widgets riches, y compris des tableaux, des listes et des graphiques.

Appsmith Community Edition est open-source et peut être entièrement auto-hébergé. Dans ce guide, nous montrerons comment déployer votre propre instance Appsmith en tant que conteneur Docker. Il s'agit de la méthode recommandée qui simplifie l'installation initiale et la maintenance continue. Nous supposerons que Docker et Docker Compose sont déjà installés sur votre système.

Un premier déploiement

Vous pouvez démarrez un serveur Appsmith de base pour l'expérimentation en utilisant docker run seul :

$ docker run -d –name appsmith -p 8080:80 -p 9001:9001 -v $PWD/appsmith-stacks:/appsmith-stacks appsmith/appsmith-ce

Cela démarre un nouveau conteneur en utilisant appsmith/appsmith -ce image et lie le répertoire appsmith-stacks de votre répertoire de travail à /appsmith-stacks à l'intérieur du conteneur. Vous devez toujours monter un volume à cet emplacement pour éviter la perte de données après la mise à jour ou le redémarrage du conteneur Appsmith.

La première initialisation d'Appsmith peut prendre un certain temps. Le conteneur générera des fichiers de configuration, créera votre base de données MongoDB et activera l'ensemble initial de plugins d'application. Vous pouvez vérifier quand votre instance est prête pour les connexions en suivant les journaux du conteneur :

$ docker logs appsmith –follow

Attendez de voir qu'un Appsmith est en cours d'exécution ! message dans la sortie du journal.

Configuration d'Appsmith

Visitez maintenant localhost:8080 dans votre navigateur. Ce port était lié au port 80 du conteneur dans la commande docker run ci-dessus. Remplacez par votre propre valeur si vous avez modifié le numéro de port dans la commande.

Vous devriez voir la page de destination de l'interface utilisateur Web d'Appsmith. Cliquez sur “Commencer” et remplissez le formulaire pour configurer votre instance Appsmith. Vous serez ensuite redirigé directement vers une nouvelle application prête à se connecter à vos sources de données.

Utilisation de Supervisor

L'image Appsmith Docker utilise superviseurd pour exécuter plusieurs processus dans un même conteneur. L'interface utilisateur Web du superviseur est exposée sur le port 9001 ; dans la commande docker run ci-dessus, le port hôte 9001 était lié au conteneur, vous pouvez donc afficher la liste des processus de votre conteneur en visitant localhost:9001 dans votre navigateur.

Visiting Supervisor peut vous aider à déboguer les problèmes lorsque l'un des composants Appsmith cesse de fonctionner. Vous pouvez redémarrer les processus, afficher leurs journaux et les arrêter sans tuer le conteneur Docker. Garder Supervisor exposé de cette manière constitue cependant un risque de sécurité : ne liez pas le port 9001 à un conteneur Appsmith de production, sauf si vous configurez d'abord l'authentification.

Utilisation de Docker Compose

Il est recommandé d'utiliser Docker Compose pour les déploiements Appsmith à long terme. Appsmith gère son propre docker-compose.yml qui configure automatiquement un conteneur avec un montage de liaison appsmith-stack et des liaisons de port HTTP, HTTPS et superviseur.

Cette pile Docker Compose officielle est livrée avec l'intégration Watchtower. Watchtower remplacera automatiquement votre conteneur Appsmith à chaque mise à jour de l'image, garantissant ainsi que vous utilisez la dernière version disponible.

Téléchargez le fichier Docker Compose sur votre hôte Docker :

$ curl – L https://bit.ly/32jBNin -o $PWD/docker-compose.yml

Utilisez maintenant Docker Compose pour afficher la pile Appsmith :

$ docker-compose up -d

Attendez qu'Appsmith soit en cours d'exécution ! pour apparaître dans les journaux avant de visiter localhost dans votre navigateur.

Écrire votre propre fichier Compose

Appsmith’ s Le fichier Compose ne fournit pas de variables d'environnement pour personnaliser les liaisons de port ou la version de l'image. Cette pile alternative vous permet d'utiliser différents ports et d'épingler une version spécifique de l'image Appsmith.

version : "3" services : appsmith : image : appsmith/appsmith-ce:${IMAGE_TAG:-latest} ports : – ${HTTP_PORT:-80}:80 – ${HTTPS_PORT:-443}:443 volumes : – piles :/appsmith_stacks restart : à moins que les volumes ne soient arrêtés : piles :

Vous pouvez maintenant exécuter docker-compose up -d pour démarrer une version spécifique d'Appsmith sur un port particulier.

$ IMAGE_TAG=v1.6.19 HTTP_PORT=8080 docker-compose up -d

Ce fichier Compose utilise également un volume Docker nommé au lieu du montage de liaison directe à l'hôte.

Mise à jour de votre installation

Vous pouvez mettre à jour les nouvelles versions d'Appsmith en extrayant la dernière image et en redémarrant votre pile :

$ docker-compose pull && docker-compose up -d –force-recreate appsmith

Ceci est sûr car toutes vos données persistantes sont stockées dans le volume des piles.

Vous n'avez pas besoin de mettre à jour manuellement lorsque vous 8217;re utilisant l'intégration Watchtower incluse avec le fichier Compose officiel. Vous pouvez ajouter Watchtower à votre propre pile en l'incluant en tant que service supplémentaire :

version : "3" services : appsmith : image : appsmith/appsmith-ce:${IMAGE_TAG:-latest} ports : – ${HTTP_PORT:-80}:80 – ${HTTPS_PORT:-443}:443 volumes : – piles :/appsmith_stacks labels : com.centurylinklabs.watchtower.enable : &quot ;vrai" redémarrer : tour de guet à moins d'être arrêté : image : conteneurrrr/watchtower : derniers volumes : – /var/run/docker.sock :/var/run/docker.sock commande : –interval 3600 –label-enable –cleanup restart : volumes à moins d'être arrêtés : piles :

Cela exécute Appsmith avec un conteneur Watchtower qui vérifie les mises à jour d'image toutes les heures (3600 secondes). Seuls les conteneurs avec l'étiquette com.centurylinklabs.watchtower.enable sont vérifiés afin qu'ils soient ajoutés au service appsmith. Watchtower a besoin d'accéder au socket Docker de votre hôte pour pouvoir extraire de nouvelles images et remplacer les conteneurs en cours d'exécution.

Configuration de votre instance

Le fichier de configuration d'Appsmith est disponible dans /appsmith-stacks/configuration/docker.env à l'intérieur du conteneur. Si vous avez lié un répertoire local monté à ce chemin, vous pouvez modifier le fichier sur votre hôte au lieu de vous connecter directement au conteneur.

# Si vous liez le montage de “piles” à /appsmith-stacks $ nano stacks/configuration/docker.env # Si vous utilisez un volume Docker $ docker cp appsmith:/appsmith-stacks/configuration/docker.env docker.env $ nano docker.env $ docker cp docker.env appsmith:/appsmith-stacks/configuration/docker.env

Le fichier de configuration configure les variables d'environnement qui seront mises à la disposition de votre installation Appsmith. Les paramètres possibles incluent les informations d'identification pour différentes sources de données, les clés API pour les intégrations tierces et les détails de connexion pour votre serveur de messagerie et la base de données MongoDB. Les valeurs requises sont automatiquement renseignées lors de la première routine d'exécution d'Appsmith.

Pour modifier un paramètre, mettez d'abord à jour sa valeur dans le fichier de configuration :

APPSMITH_MAIL_ENABLED=true APPSMITH_MAIL_HOST=mail.example.com APPSMITH_MAIL_PORT=465 APPSMITH_MAIL_USERNAME=appsmith APPSMITH_MAIL_PASSWORD=$3cureP@ss APPSMITH_MAIL_FROM=appsmith@example.com

Redémarrez ensuite votre conteneur Appsmith pour appliquer les modifications :

$ docker-compose restart appsmith

Appsmith utilisera automatiquement la nouvelle configuration au prochain démarrage.

Exporter vos données

Une fois que vous commencerez à utiliser Appsmith, vous assemblerez rapidement des applications qui pourraient être difficiles à reproduire à l'avenir. Vous devez fréquemment sauvegarder votre installation pour vous protéger contre la perte de données.

L'image Docker inclut une commande qui peut produire une archive complète à la demande :

$ docker-compose exec appsmith appsmithctl export_db

La sauvegarde sera stockée dans /appsmith-stacks/data/backup/appsmith-data. archive à l'intérieur du conteneur. Utilisez docker cp pour déplacer l'archive vers votre hôte Docker :

$ docker cp appsmith:/appsmith-stacks/data/backup/appsmith-data.archive appsmith-backup-$(date +%Y-%m-% d).archive

Copiez ensuite le répertoire /appsmith-stacks/configuration hors du conteneur. Inclure ces fichiers dans votre sauvegarde finale vous évitera d'avoir à reconstruire votre fichier de configuration après une restauration de sauvegarde. Vous pouvez désormais télécharger votre sauvegarde sur un stockage cloud ou sur un serveur dédié pour protéger vos données en cas de panne de votre hôte Docker.

Pour restaurer une archive de sauvegarde ultérieurement, copiez-la dans /appsmith-stacks/data /restore dans un nouveau conteneur Appsmith et exécutez la commande import_db :

$ docker cp appsmith-backup-2022-04-13.archive appsmith:/appsmith-stacks/data/restore $ docker-compose exec appsmith appsmithctl import_db < p>Redémarrez Appsmith pour terminer la restauration :

$ docker-compose restart appsmith

Utilisation d'Appsmith

Les applications Appsmith ont quatre composants fondamentaux :

  • Pages – Les écrans de votre application.
  • Widgets – Les composants de l'interface utilisateur sur ces écrans.
  • Requêtes/JavaScript – Extraits de code JavaScript personnalisés qui ajoutent des fonctionnalités avancées.
  • Sources de données– Connexions à vos bases de données externes.

Démarrez une nouvelle application en cliquant sur le & #8220;Ajouter une source de données” bouton sur sa page de destination. Vous pouvez rapidement échafauder un exemple d'application à l'aide de l'une des bases de données d'exemple intégrées. Cliquez sur “utilisateurs” option pour ajouter une base de données PostgreSQL remplie de certaines données utilisateur.

Cliquez ensuite sur “Nouvelle requête” bouton pour ajouter une requête qui affiche les informations du magasin de données.

Retournez à la page de votre application en cliquant sur “Page 1” dans la barre latérale gauche. Appuyez sur “Ajouter un widget” et faites glisser l'un des widgets de la barre latérale sur le canevas. Nous utilisons une liste.

Dans le volet des propriétés à droite, effacez les exemples de données et remplacez-les par {{Query1.data}}. Cela exécute la requête créée précédemment pour afficher les données de la base de données des utilisateurs. L'aperçu en direct sera mis à jour et affichera la liste des utilisateurs.

 

< p>Vous pouvez continuer à ajouter des widgets pour développer les fonctionnalités de votre application. Une fois que vous avez terminé, cliquez sur le bouton “Déployer” en haut à droite pour publier votre application et la lancer dans le mode d'affichage d'Appsmith.

Résumé

Appsmith est une plate-forme open-source low code permettant de développer rapidement de nouvelles applications professionnelles. L'image Docker officielle vous permet de démarrer rapidement votre propre instance Appsmith avec une configuration minimale.

Une fois votre conteneur opérationnel, vous pouvez utiliser la suite de connecteurs incluse pour interroger, modifier et visualiser les magasins de données de votre organisation. Ensuite, vous pouvez partager votre application avec d'autres membres de l'équipe ou activer l'accès public afin que les sous-traitants, fournisseurs et clients externes puissent participer.

Une instance Dockerized Appsmith devrait nécessiter peu de maintenance à long terme au-delà des mises à jour et des sauvegardes régulières. L'utilisation de Docker pour le déploiement facilite également la suppression d'Appsmith de votre système si vous décidez que ce n'est pas pour vous. Exécutez docker-compose down –volumes pour détruire complètement votre pile, y compris les données stockées dans votre volume appsmith-stacks.

LIRE LA SUITE

  • › “Apportez votre propre conducteur vulnérable” Les attaques cassent Windows
  • &rsaquo ; 7 conseils pour empêcher votre technologie de surchauffer
  • &rsaquo ; Combien d'énergie le mode d'économie d'énergie sur les téléviseurs permet-il d'économiser réellement ?
  • › Pourquoi s'appelle-t-il Roku ?
  • › Test du Google Pixel 6a : un excellent téléphone de milieu de gamme un peu court
  • &rsaquo ; 10 fonctionnalités Mac cachées que vous devriez utiliser