[JAVA] Construction de l'environnement Docker × Spring Boot

Construction de l'environnement Docker × Spring Boot

Aperçu

Utilisez Docker pour créer un environnement Spring Boot. Pour vérifier l'opération, affichez Hello World sur le navigateur.

environnement

--macOS Catalina version 10.15.5

Constitution

La configuration finale sera la suivante.

├── docker-compose.yml
└── server
    ├── HELP.md
    ├── build
    │   ├── classes
    │   │   └── java
    │   │       ├── main
    │   │       │   └── com
    │   │       │       └── example
    │   │       │           └── api
    │   │       │               └── ApiApplication.class
    │   │       └── test
    │   │           └── com
    │   │               └── example
    │   │                   └── api
    │   │                       └── ApiApplicationTests.class
    │   ├── generated
    │   │   └── sources
    │   │       ├── annotationProcessor
    │   │       │   └── java
    │   │       │       ├── main
    │   │       │       └── test
    │   │       └── headers
    │   │           └── java
    │   │               ├── main
    │   │               └── test
    │   ├── libs
    │   │   └── api-0.0.1-SNAPSHOT.jar
    │   ├── reports
    │   │   └── tests
    │   │       └── test
    │   │           ├── classes
    │   │           │   └── com.example.api.ApiApplicationTests.html
    │   │           ├── css
    │   │           │   ├── base-style.css
    │   │           │   └── style.css
    │   │           ├── index.html
    │   │           ├── js
    │   │           │   └── report.js
    │   │           └── packages
    │   │               └── com.example.api.html
    │   ├── resources
    │   │   └── main
    │   │       ├── application.properties
    │   │       ├── static
    │   │       └── templates
    │   ├── test-results
    │   │   └── test
    │   │       ├── TEST-com.example.api.ApiApplicationTests.xml
    │   │       └── binary
    │   │           ├── output.bin
    │   │           ├── output.bin.idx
    │   │           └── results.bin
    │   └── tmp
    │       ├── bootJar
    │       │   └── MANIFEST.MF
    │       ├── compileJava
    │       └── compileTestJava
    ├── build.gradle
    ├── gradle
    │   └── wrapper
    │       ├── gradle-wrapper.jar
    │       └── gradle-wrapper.properties
    ├── gradlew
    ├── gradlew.bat
    ├── settings.gradle
    └── src
        ├── main
        │   ├── java
        │   │   └── com
        │   │       └── example
        │   │           └── api
        │   │               └── ApiApplication.java
        │   └── resources
        │       ├── application.properties
        │       ├── static
        │       └── templates
        └── test
            └── java
                └── com
                    └── example
                        └── api
                            └── ApiApplicationTests.java

procédure

1. Créez docker-compose.yml

Cette fois, il s'agit d'une configuration simple avec un seul conteneur java.

docker-compose.yml


version: '3.6'
services:
  java:
    image: openjdk:14-slim
    ports:
      - 8080:8080
    tty: true
    volumes:
      - ./server:/srv:cached
    working_dir: /srv

2. Créer un projet Gradle

2.1 Créer un modèle de projet Gradle avec spring initializr スクリーンショット 2020-07-10 11.37.29.png

2.2 Téléchargez le modèle de projet Gradle スクリーンショット 2020-07-10 11.43.22.png

2.3 Développer au projet Créez un répertoire serveur directement sous le répertoire du projet. Extrayez ʻapi.ziptéléchargé en 2.2 et déplacez le contenu directement sousserver`.

3. Modifiez le fichier de candidature

Modifiez server / src / main / java / com / example / api / ApiApplication.java comme suit.

server/src/main/java/com/example/api/ApiApplication.java


package com.example.api;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@SpringBootApplication
@RestController
public class ApiApplication {

    @RequestMapping("/")
    public String home() {
        return "Hello World";
    }

    public static void main(String[] args) {
        SpringApplication.run(ApiApplication.class, args);
    }

}

4. Démarrez Docker

//build de l'environnement Docker
% docker-compose build

//Démarrer le docker en arrière-plan
% docker-compose up -d

5. Construisez Gradle

//Inspection sur le conteneur Java
% docker-compose exec java bash

//construction gradle
root@62acca270468:/srv# sh gradlew build
...
BUILD SUCCESSFUL in 1m 38s
5 actionable tasks: 3 executed, 2 up-to-date

Assurez-vous que le répertoire build est créé directement sous le serveur.

6. Exécutez l'application

root@62acca270468:/srv# java -jar build/libs/api-0.0.1-SNAPSHOT.jar

7. Contrôle de fonctionnement

Accédons à http: // localhost: 8080 /. Si «Hello World» est affiché, il réussit.

référence

Recommended Posts

Construction de l'environnement Docker × Spring Boot
[Spring Boot] Construction de l'environnement (macOS)
[Printemps] Construction de l'environnement
◆ Spring Boot + note de construction de l'environnement gradle
Création d'un environnement de base de données avec Docker dans Spring Boot (IntellJ)
Construction de l'environnement Rails Docker
Mémo de construction de l'environnement Spring Boot sur Mac
Environnement de développement-développement Spring Boot-
Essayez Spring Boot 1 (Construction de l'environnement ~ Démarrage de Tomcat)
Créer un environnement de développement Spring Boot avec docker
Mémo de construction de l'environnement MySQL 5.7 (Docker)
Mémo de construction de l'environnement Redmine (Docker)
[Docker] Construction de l'environnement Rails 5.2 avec docker
[Docker] postgres, construction de l'environnement pgadmin4
printemps × docker
Créer un environnement Node.js avec Docker Compose
Construction d'environnement avec Docker pour les débutants
Construction de l'environnement d'utilisation Laravel + Docker Laradock
Rails sur la procédure de construction de l'environnement Docker
[Construction de l'environnement avec Docker] Rails 6 et MySQL 8
Création d'un environnement de développement Spring Boot dans Vagrant
Apprentissage des instructions SQL ~ Construction de l'environnement ~ Docker + MySQL
Construction de l'environnement GPU avec Docker [version d'octobre 2020]
Construction d'environnement de rails avec Docker (apocalypse personnelle)
Construction de l'environnement de développement Laravel avec Docker (Mac)
[Java] Construction de l'environnement
Créer un environnement de développement Spring Boot-gradle-mysql avec Docker
[Docker] Construction de l'environnement de développement Rails6 / Ruby2.7 / MySQL8
Construire un environnement pour Laravel + MySQL + phpMyadmin avec Docker
Spring Boot Rappelez-vous
gae + botte à ressort
[Construction de l'environnement] Installation de Spring Tool Suite 4 (Mac)
À propos de la conception de Spring Boot et de l'environnement de test unitaire
Créer un environnement Kaggle à l'aide de Docker officiel et de vscode
Comment réduire l'image de Spring Boot Docker
Procédure de construction de l'environnement JAVA + STS (Spring Tool Suite)
Créez des projets Spring Boot par environnement avec Gradle
Construction de l'environnement IntelliJ + Docker (APP + DB) + SpringBoot (Maven)
Créer un environnement Spring Boot avec Windows + VS Code
Procédure de construction de LINE Bot x Java (Spring Boot)
Procédure de construction et de développement de l'environnement local Wordpress avec Docker
Construction de l'environnement Penronse [Windows]
Fiche d'apprentissage SPRING BOOT 01
Botte de printemps + Heroku Postgres
[Flutter] Construction de l'environnement Ubuntu 20.04
Rédaction de mémo de démarrage de printemps (1)
Première botte à ressort (DI)
Fiche d'apprentissage SPRING BOOT 02
Gestion des exceptions Spring Boot