Bienvenue dans le guide pour le déploiement d'applications RAD Studio sur Linux à l'aide de Docker et Paserver. Ce référentiel propose un script Docker conçu pour simplifier la configuration et la gestion de votre environnement de développement, permettant aux développeurs de Studio RAD de déployer et de tester leurs applications dans un environnement Linux.
L'image par défaut en cours d'exécution de Paserver sur le port 64211 avec le mot de passe securepass
Les images 10.x utilisent Ubuntu 18.04.6 LTS (castor bionique) tandis que les images + 11.x utilisent Ubuntu 22.04.1 LTS (Jammy Jellyfish)
run.sh ] Le script [ run.sh ] est votre outil d'automatisation de choix pour configurer et déployer l'application paserver avec facilité et flexibilité. Voici les instructions pour utiliser efficacement ce script.
Assurez-vous que Docker est installé sur votre système car ce script utilise Docker pour exécuter l'application Paserver.
Accédez au répertoire contenant [ run.sh ] dans votre terminal. Exécutez le script avec vos options préférées:
./run.sh [OPTIONS]--name ou -n : le nom du conteneur (par exemple, --name=myPAServer ).--path ou -pa : chemin de liaison pour le mappage de volume (par exemple, --path=/my/custom/path ).--detach ou -d : Exécutez le conteneur en mode détachement (arrière-plan).--port ou -p : port pour paserver (par exemple, --port=64211 ).--production ou -pr : Activer le mode de production ( true ).--version ou -v : version paserver (par exemple, --version=latest ).--password ou -pw : définissez un mot de passe pour Paserver (par exemple, --password=securepass ).--help ou -h : montre l'aide du script.Exécutez Paserver en mode de production sur le port 65000 avec un nom et un mot de passe personnalisés:
./run.sh --name=myPAServer --port=65000 --production --password=mysupersecurepasswordExécutez paserver en mode détache avec une version spécifique, un chemin de liaison et un mot de passe:
./run.sh --detach --version=12.1 --path=/my/custom/path --password=mysupersecurepassword Assurez-vous que vous disposez des autorisations nécessaires pour exécuter run.sh Utilisez chmod +x run.sh pour le rendre exécutable si nécessaire.
docker run directement Pour les utilisateurs qui préfèrent une approche plus pratique ou souhaitent personnaliser leur déploiement davantage, vous pouvez utiliser directement la commande docker run pour démarrer votre conteneur Paserver. Cette méthode offre une flexibilité et vous permet de spécifier manuellement chaque option.
La structure de base de la commande pour exécuter le conteneur Paserver Docker est la suivante:
docker run [OPTIONS] radstudio/paserver:[VERSION]-e PA_SERVER_PASSWORD=[PASSWORD] : définit le mot de passe du paserver. Remplacez [PASSWORD] par le mot de passe souhaité.--name [NAME] : attribue un nom personnalisé à votre conteneur Docker. Remplacez [NAME] par votre nom de conteneur préféré.-p [PORT]:64211 : mappe un port personnalisé sur votre hôte au port par défaut du Paserver (64211). Remplacez [PORT] par le numéro de port que vous souhaitez utiliser.[DETACH_ARG] : Utilisez -d pour exécuter le conteneur en mode détaché (en arrière-plan).[BIND_PATH_ARG] : utilisez -v [HOST_PATH]:[CONTAINER_PATH] pour lier un volume pour les données ou les configurations persistantes. Remplacez [HOST_PATH] et [CONTAINER_PATH] par vos chemins spécifiques. Pour exécuter le Paserver dans un conteneur Docker nommé myPAServer , en écoutant sur le port 65000, avec un mot de passe de mysupersecurepassword et en mode détaché, vous utiliseriez la commande suivante:
docker run -d
-e PA_SERVER_PASSWORD=mysupersecurepassword
--name myPAServer
-p 65000:64211 radstudio/paserver:latest Si vous souhaitez lier un volume pour les données persistantes, vous pouvez ajouter l'option -v :
docker run -d
-e PA_SERVER_PASSWORD=securepass
-v /path/on/host:/root/PAServer/scratch-dir
--name myPAServer
-p 65000:64211 radstudio/paserver:latest Docker Compose vous permet de définir et d'exécuter des applications Docker multi-container. Voici un exemple de fichier docker-compose.yml qui montre comment utiliser une image Docker dans le cadre d'un service, en utilisant des variables d'environnement pour la configuration.
version : ' 3.8 '
services :
myPAServer :
image : radstudio/paserver:latest
container_name : myPAServer
environment :
- PA_SERVER_PASSWORD=${PA_SERVER_PASSWORD} # Environment variable for the server password
ports :
- ' ${HOST_PORT}:64211 ' # Environment variable for the host port
volumes :
- ${HOST_PATH}:/root/PAServer/scratch-dir # Environment variable for the host path
restart : unless-stopped Cette configuration définit un seul service appelé myPAServer . Il utilise l'image Docker radstudio/paserver:latest . La configuration du service comprend le mappage d'un port de l'hôte vers le conteneur, la définition d'une variable d'environnement pour le mot de passe du serveur et le montage d'un volume de l'hôte vers le conteneur. Ces paramètres sont personnalisables via des variables d'environnement définies dans un fichier .env situé dans le même répertoire que votre docker-compose.yml .
# .env file
PA_SERVER_PASSWORD=securepass
HOST_PORT=65000
HOST_PATH=/path/on/host
Pour démarrer votre application, exécutez la commande suivante dans le répertoire contenant votre docker-compose.yml :
docker-compose up Cette commande initie le processus Docker Compose, qui lit le fichier docker-compose.yml et le fichier .env , en appliquant les configurations pour démarrer votre service tel que défini.
Cela tirera l'image nécessaire (si elle n'est pas déjà disponible localement), créera les volumes définis, définir les variables d'environnement et démarrer votre application sur les ports spécifiés.
Assurez-vous de remplacer /path/on/host par le chemin réel que vous souhaitez utiliser pour la liaison de volume. La latest balise peut être remplacée par n'importe quelle version spécifique du Paserver que vous souhaitez déployer.
Ce guide vous aidera à personnaliser l'image paserver en fonction de vos besoins spécifiques, tels que l'ajout de fichiers ou de dossiers supplémentaires, d'installation de packages supplémentaires et de procéder à d'autres modifications.
Pour ajouter des fichiers ou des dossiers à votre image Docker, utilisez la COPY ou ADD des instructions dans votre dockerfile. COPY est préférée pour la copie des fichiers locaux, tandis que ADD peut gérer les URL distantes et l'extraction du goudron.
COPY ./myconfig.conf /etc/myapp/myconfig.conf Cette commande copie myconfig.conf de votre répertoire de projet à /etc/myapp/myconfig.conf à l'intérieur de l'image docker.
Pour installer des packages supplémentaires, vous pouvez modifier la commande RUN qui installe des packages. Il est préférable de combiner les commandes d'installation de packages en une seule instruction RUN pour réduire le nombre de couches dans votre image Docker.
RUN apt-get update && apt-get install -y
git
cmake
&& rm -rf /var/lib/apt/lists/*Sur la base de chaque projet, des bibliothèques spécifiques peuvent être nécessaires. Cette commande met à jour les listes de packages, installe Git et Cmake et nettoie ensuite pour maintenir la taille de l'image.
Pour éviter la superposition supplémentaire dans l'image Docker finale, il est bon de modifier la commande RUN apt-get update existante pour inclure vos bibliothèques requises.
Vous pouvez personnaliser le dockerfile pour modifier les variables d'environnement, télécharger différentes versions de logiciels ou modifier le processus d'installation.
ENV MY_CUSTOM_VAR=myvalue Cela définit une variable d'environnement MY_CUSTOM_VAR qui peut être utilisée par votre application.
Après avoir personnalisé votre dockerfile, vous pouvez créer votre image Docker à l'aide de la commande docker build .
docker build -t my-custom-paserver:latest . Cette commande construit une image docker nommée my-custom-paserver avec la latest balise, en utilisant le dockerfile dans le répertoire actuel.
Pour les valeurs qui pourraient changer entre les builds (comme les mots de passe ou les numéros de version), vous pouvez utiliser les instructions ARG dans votre dockerfile et passer des valeurs avec l'option --build-arg pendant la version.
ARG password=securepassCréer avec un mot de passe personnalisé:
docker build --build-arg password=mypassword -t my-custom-paserver:latest .build.sh ] qui peut être utilisé comme modèle pour simplifier les versions personnalisées.linux/amd64 . Pour éviter les problèmes potentiels dans les configurations des bras, construisez l'image avec l'ARG --platform linux/amd64RUN unique dans la mesure du possible..dockerignore : Ajoutez un fichier .dockerignore à votre projet pour éviter de copier des fichiers inutiles dans votre image Docker.Ce logiciel est Copyright © 2024 par Embarcadero Technologies, Inc.
Vous pouvez utiliser ce logiciel que si vous êtes un licencié autorisé d'un produit d'outils de développeur Embarcadero. Voir le dernier accord de licence logicielle pour toute mise à jour.