Docker × Spring Boot 환경 구축
8018 단어 docker-compose도커자바spring-boot
Docker × Spring Boot 환경 구축
개요
Docker를 사용하여 Spring Boot 환경을 구축합니다.
동작 확인으로 Hello World를 브라우저에 표시합니다.
환경
구성
최종적으로는 다음과 같은 구성이 됩니다.
├── 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
절차
1. docker-compose.yml 만들기
이번에는 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. Gradle 프로젝트 생성
2.1 spring initializr에서 Gradle 프로젝트의 병아리 만들기

2.2 Gradle 프로젝트의 병아리 다운로드

2.3 프로젝트에 배포
프로젝트 디렉터리 바로 아래에
server 디렉터리를 만듭니다.2.2에서 다운로드한
api.zip를 확장하고 내용을 server 바로 아래로 옮깁니다.3. 애플리케이션 파일 편집
server/src/main/java/com/example/api/ApiApplication.java를 다음과 같이 편집합니다.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. Docker 시작
// docker環境ビルド
% docker-compose build
// dockerをバックグラウンドで起動
% docker-compose up -d
5. Gradle 빌드
// javaコンテナにインスペクション
% docker-compose exec java bash
// gradleビルド
root@62acca270468:/srv# sh gradlew build
...
BUILD SUCCESSFUL in 1m 38s
5 actionable tasks: 3 executed, 2 up-to-date
server 바로 아래에 build 디렉토리가 있는지 확인하십시오.6. 애플리케이션 실행
root@62acca270468:/srv# java -jar build/libs/api-0.0.1-SNAPSHOT.jar
7. 동작 확인
http://localhost-8080.com/로 이동합니다.
Hello World가 표시되면 성공입니다.참고
Reference
이 문제에 관하여(Docker × Spring Boot 환경 구축), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/A-Kira/items/beaf79a0d39d9839e61e텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)