Kelebihan integrasi Spring Boot dan Docker: Kemudahalihan: Bekas Docker boleh dijalankan merentasi persekitaran yang berbeza, memudahkan penggunaan. Kebolehulangan: Imej Docker memastikan aplikasi berkelakuan secara konsisten merentas persekitaran yang berbeza. Kebolehskalaan: Docker Compose mengurus dan menskalakan seni bina perkhidmatan mikro berbilang bekas dengan mudah. Pengasingan: Bekas Docker menyediakan lapisan pengasingan untuk mengelakkan konflik atau gangguan aplikasi.
Spring Boot ialah rangka kerja Java yang popular untuk membina API REST dan perkhidmatan mikro yang mantap dengan pantas. Docker ialah platform sumber terbuka untuk pembungkusan, pengedaran dan menjalankan aplikasi. Menggabungkan Spring Boot dengan Docker menjadikannya mudah untuk mencipta seni bina perkhidmatan mikro mudah alih dan boleh berulang.
@RestController @RequestMapping("/example") public class ExampleController { @GetMapping public String hello() { return "Hello, world!"; } }
Buat fail konfigurasi Spring Boot bernama application.yml
, konfigurasikan port pelayan: 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
menentukan arahan permulaan aplikasi. . Gunakan Docker Compose untuk mengatur bekas
rrreeeBuat fail Docker Compose bernama docker-compose.yml
dan tentukan perkhidmatan demo
.
Untuk digunakan ke pengeluaran:
docker-compose up -d
untuk membuat dan memulakan bekas. Atas ialah kandungan terperinci Gabungan hebat Spring Boot dan Docker. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!