Spring Boot と Docker の統合の利点: 移植性: Docker コンテナーはさまざまな環境で実行できるため、デプロイが簡素化されます。再現性: Docker イメージは、アプリケーションが環境間で一貫して動作することを保証します。スケーラビリティ: Docker Compose は、複数コンテナーのマイクロサービス アーキテクチャを簡単に管理および拡張します。分離: Docker コンテナーは、アプリケーションの競合や干渉を防ぐための分離層を提供します。
Spring Boot は、堅牢な REST API とマイクロサービスを迅速に構築するための人気のある Java フレームワークです。 Docker は、アプリケーションをパッケージ化、配布、実行するためのオープンソース プラットフォームです。 Spring Boot と Docker を組み合わせると、移植可能で反復可能なマイクロサービス アーキテクチャを簡単に作成できます。
@RestController @RequestMapping("/example") public class ExampleController { @GetMapping public String hello() { return "Hello, world!"; } }
application.yml
という名前の Spring Boot 構成ファイルを作成し、サーバー ポートを構成します: application.yml
的Spring Boot配置文件,配置服务器端口:
server: port: 8080
FROM openjdk:11 COPY target/demo-0.0.1-SNAPSHOT.jar app.jar ENTRYPOINT ["java", "-jar", "app.jar"]
上面的Dockerfile构建了一个基于OpenJDK 11的镜像,并复制Spring Boot应用程序JAR文件到镜像中。ENTRYPOINT
指定了应用程序的启动命令。
docker build -t demo .
docker run -p 8080:8080 demo
这个命令将启动一个容器,该容器从demo
镜像运行Spring Boot应用程序,并将容器端口8080映射到主机端口8080。
version: '3.7' services: demo: build: . ports: - "8080:8080"
创建一个名为docker-compose.yml
的Docker Compose文件,并定义了demo
服务。
要部署到生产环境:
docker-compose up -d
docker build . --no-cache
docker-compose down && docker-compose up -d
ENTRYPOINT
は、アプリケーションの起動コマンドを指定します。 Docker イメージの構築
rrreeeDocker コンテナの実行
rrreeedemo
イメージから Spring Boot アプリケーションを実行するコンテナを起動し、コンテナ ポート 8080 をホスト ポート 8080 にマップします。 Docker Compose を使用してコンテナをオーケストレーションします
rrreeedocker-compose.yml
という名前の Docker Compose ファイルを作成し、demo
サービスを定義します。 docker-compose up -d
を実行して、コンテナーを作成して開始します。 以上がSpring Boot と Docker の強力な組み合わせの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。