Maison > Java > javaDidacticiel > Bonnes pratiques pour développer et déployer des applications conteneurisées à l'aide de Docker et Spring Boot

Bonnes pratiques pour développer et déployer des applications conteneurisées à l'aide de Docker et Spring Boot

王林
Libérer: 2023-10-27 16:12:27
original
756 Les gens l'ont consulté

使用Docker和Spring Boot开发和部署容器化应用的最佳实践

Bonnes pratiques pour développer et déployer des applications conteneurisées à l'aide de Docker et Spring Boot

Introduction :
Avec la popularité et le développement de la technologie du cloud computing, le développement et le déploiement d'applications conteneurisées sont devenus de plus en plus importants. En tant que technologie de conteneurisation populaire, Docker peut fournir un environnement d'exécution isolé pour les applications et simplifier considérablement le processus de développement et de déploiement. En tant que framework simplifiant le développement Java, Spring Boot peut créer rapidement des applications Spring indépendantes et exécutables. Cet article combinera Docker et Spring Boot pour présenter comment développer et déployer des applications conteneurisées.

1. Introduction à Docker
Docker est une plate-forme de conteneurisation légère qui utilise la technologie de virtualisation au niveau du système d'exploitation pour regrouper les applications et leurs bibliothèques dépendantes dans un conteneur, permettant ainsi aux applications d'être déployées dans différents environnements. Voici quelques concepts de base de Docker :

  1. Image : La base des conteneurs Docker. Il s'agit d'un modèle en lecture seule qui peut être utilisé pour créer des conteneurs Docker. Des images personnalisées peuvent être créées en créant, en téléchargeant ou en modifiant des images existantes.
  2. Conteneur : une instance en cours d'exécution de l'image Docker. Chaque conteneur est isolé les uns des autres et possède son propre système de fichiers, son espace de processus et son interface réseau.
  3. Dépôt : une plate-forme de stockage et de partage pour les images Docker. Vous pouvez obtenir des images du référentiel et télécharger les images que vous créez dans le référentiel.

2. Intégration de Spring Boot et Docker
Spring Boot fournit certaines fonctionnalités pour faciliter le développement et l'intégration de Docker. Ce qui suit présente quelques bonnes pratiques couramment utilisées pour intégrer Spring Boot et Docker.

  1. Créer des fichiers JAR exécutables
    Spring Boot peut regrouper l'intégralité de l'application dans un fichier JAR exécutable pour faciliter l'exécution dans différents environnements. Ajoutez le plug-in suivant au fichier pom.xml :
<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <version>${spring-boot.version}</version>
            <executions>
                <execution>
                    <goals>
                        <goal>repackage</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>
Copier après la connexion

Exécutez la commande mvn clean package pour générer un fichier JAR exécutable. mvn clean package命令,即可生成可执行的JAR文件。

  1. 编写Dockerfile
    Dockerfile是用来构建Docker镜像的脚本,它包含了一系列的指令,用来描述如何构建镜像。以下是一个示例的Dockerfile:
FROM openjdk:8-jdk-alpine
COPY target/myapp.jar myapp.jar
EXPOSE 8080
CMD ["java", "-jar", "myapp.jar"]
Copier après la connexion
Copier après la connexion

其中,FROM指定了基础镜像为openjdk:8-jdk-alpine,COPY将可执行的JAR文件复制到镜像中,EXPOSE暴露容器的端口,CMD指定容器启动时运行的命令。

  1. 构建Docker镜像
    进入该Dockerfile所在的目录,运行如下命令构建镜像:
docker build -t myapp:1.0 .
Copier après la connexion
Copier après la connexion

其中,-t指定镜像的名称和版本号,.表示Dockerfile所在的目录。

  1. 启动Docker容器
    运行以下命令启动Docker容器:
docker run -d -p 8080:8080 myapp:1.0
Copier après la connexion
Copier après la connexion

其中,-d表示后台运行容器,-p指定宿主机与容器的端口映射。

三、应用示例
下面以一个简单的Spring Boot应用为例,演示如何使用Docker开发与部署容器化应用。

  1. 创建Spring Boot项目
    使用以下命令创建一个名为"myapp"的Spring Boot项目:
spring init -n=myapp -g=com.example -a=myapp -d=web
Copier après la connexion
  1. 添加Docker支持
    在项目根目录下创建一个名为Dockerfile的文件,并将以下内容复制到该文件中:
FROM openjdk:8-jdk-alpine
COPY target/myapp.jar myapp.jar
EXPOSE 8080
CMD ["java", "-jar", "myapp.jar"]
Copier après la connexion
Copier après la connexion
  1. 构建Docker镜像
    运行以下命令构建Docker镜像:
docker build -t myapp:1.0 .
Copier après la connexion
Copier après la connexion
  1. 启动Docker容器
    运行以下命令启动Docker容器:
docker run -d -p 8080:8080 myapp:1.0
Copier après la connexion
Copier après la connexion
  1. 访问应用
    在浏览器中输入http://localhost:8080
    1. Écriture de Dockerfile
    Dockerfile est un script utilisé pour créer une image Docker. Il contient une série d'instructions pour décrire comment créer l'image. Voici un exemple de Dockerfile :


    rrreee

    Parmi eux, FROM spécifie l'image de base comme openjdk:8-jdk-alpine, et COPY copie le fichier JAR exécutable dans Dans l'image, EXPOSE expose le port du conteneur et CMD spécifie la commande à exécuter au démarrage du conteneur. 🎜
      🎜Créer l'image Docker🎜Entrez le répertoire où se trouve le fichier Docker et exécutez la commande suivante pour créer l'image :🎜🎜rrreee🎜Parmi eux, -t précise le nom et le numéro de version de l'image, . indique le répertoire où se trouve le Dockerfile. 🎜
        🎜Démarrez le conteneur Docker🎜Exécutez la commande suivante pour démarrer le conteneur Docker :🎜🎜rrreee🎜Parmi eux, -d signifie exécuter le conteneur en arrière-plan, -p Spécifiez le mappage de port entre l'hôte et le conteneur. 🎜🎜3. Exemple d'application🎜Ce qui suit prend une application Spring Boot simple comme exemple pour montrer comment utiliser Docker pour développer et déployer des applications conteneurisées. 🎜🎜🎜Créer un projet Spring Boot🎜Créez un projet Spring Boot nommé "myapp" à l'aide de la commande suivante : 🎜🎜rrreee
          🎜Ajouter le support Docker🎜Créez un fichier Docker nommé dans le fichier du répertoire racine du projet et copiez le contenu suivant dans le fichier : 🎜🎜rrreee
            🎜Créez l'image Docker 🎜Exécutez la commande suivante pour créer l'image Docker : 🎜🎜rrreee
              🎜Démarrez le Docker conteneur 🎜Exécutez la commande suivante pour démarrer le conteneur Docker : 🎜🎜rrreee
                🎜Accédez à l'application🎜Entrez http://localhost:8080 dans le navigateur pour accéder à l'application . 🎜🎜🎜Résumé : 🎜Cet article présente les meilleures pratiques pour développer et déployer des applications conteneurisées à l'aide de Docker et Spring Boot. En regroupant les applications Spring Boot dans des fichiers JAR exécutables et en écrivant des fichiers Docker pour créer des images, les applications conteneurisées peuvent être rapidement développées et déployées. L'utilisation de Docker peut fournir un environnement d'exécution isolé et garantir la portabilité et la fiabilité des applications. J'espère que cet article pourra aider les lecteurs à mieux utiliser Docker et Spring Boot pour développer et déployer des applications conteneurisées. 🎜

    Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

    Étiquettes associées:
    source:php.cn
    Déclaration de ce site Web
    Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
    Tutoriels populaires
    Plus>
    Derniers téléchargements
    Plus>
    effets Web
    Code source du site Web
    Matériel du site Web
    Modèle frontal