Rumah >Java >javaTutorial >Bina aplikasi perkhidmatan mikro kontena menggunakan Docker dan Spring Boot

Bina aplikasi perkhidmatan mikro kontena menggunakan Docker dan Spring Boot

PHPz
PHPzasal
2023-10-21 09:07:441263semak imbas

利用Docker和Spring Boot构建容器化的微服务应用

Gunakan Docker dan Spring Boot untuk membina aplikasi perkhidmatan mikro dalam kontena

Pengenalan:
Dengan perkembangan pesat pengkomputeran awan, seni bina perkhidmatan mikro telah menjadi cara arus perdana untuk membina aplikasi moden. Sebagai teknologi kontena yang ringan, Docker memudahkan penggunaan dan pengurusan aplikasi. Artikel ini akan memperkenalkan cara menggunakan Docker dan Spring Boot untuk membina aplikasi perkhidmatan mikro kontena, dan memberikan contoh kod khusus.

1. Bina persekitaran
Untuk membina aplikasi perkhidmatan mikro kontena, anda perlu menyediakan persekitaran pembangunan yang sepadan terlebih dahulu. Berikut adalah langkah-langkah untuk menyediakan persekitaran:

  1. Pasang Docker
    Docker boleh dimuat turun dan dipasang di tapak web rasmi. Jalankan langkah pemasangan yang sepadan mengikut sistem pengendalian yang berbeza.
  2. Pasang persekitaran pembangunan Java
    Memandangkan kami menggunakan rangka kerja Spring Boot, kami perlu menyediakan persekitaran pembangunan Java. Anda boleh memuat turun dan memasang JDK dan mengkonfigurasi pembolehubah persekitaran yang sepadan.
  3. Buat projek Spring Boot
    Buat projek Spring Boot baharu menggunakan IDE (seperti IntelliJ IDEA).

2 Tulis kod untuk aplikasi perkhidmatan mikro
Seterusnya, kami akan menulis aplikasi perkhidmatan mikro yang mudah dan menggunakan Spring Boot untuk membina aplikasi web dengan cepat.

  1. Buat Pengawal
    Dalam projek Spring Boot kami, buat kelas Pengawal untuk mengendalikan permintaan HTTP.
@RestController
public class HelloWorldController {

    @GetMapping("/hello")
    public String hello() {
        return "Hello, World!";
    }
}
  1. Tulis kelas permulaan
    Buat kelas permulaan untuk memulakan aplikasi Spring Boot kami.
@SpringBootApplication
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
}
  1. Jalankan ujian
    Mulakan aplikasi dan lawati http://localhost:8080/hello Anda sepatutnya dapat melihat output "Hello, World!".

3. Gunakan Docker untuk menyimpan aplikasi perkhidmatan mikro
Sekarang kami telah menulis aplikasi perkhidmatan mikro yang mudah, kami akan menggunakan Docker untuk menyimpan aplikasi kami.

  1. Buat Dockerfile
    Buat fail bernama Dockerfile dalam direktori akar projek dan tambah kandungan berikut:
FROM openjdk:8-jdk-alpine
COPY target/demo.jar app.jar
ENTRYPOINT ["java","-jar","/app.jar"]

Dockerfile di atas menentukan imej asas sebagai openjdk:8-jdk-alpine, dan menyusun balang yang disusun pakej disalin ke dalam bekas dan arahan permulaan ditetapkan.

  1. Bina imej Docker
    Jalankan arahan berikut dalam direktori akar projek untuk membina imej Docker:
docker build -t demo-app .

di mana aplikasi demo ialah nama imej, yang boleh diubah suai mengikut situasi sebenar.

  1. Jalankan bekas Docker
    Selepas binaan selesai, kita boleh jalankan arahan berikut untuk memulakan bekas Docker:
docker run -p 8080:8080 demo-app

di mana 8080:8080 menentukan bahawa port di dalam kontena dipetakan ke port 8080 hos , yang boleh diubah suai mengikut keperluan.

  1. Akses aplikasi
    Kini kami boleh mengakses aplikasi kami melalui http://localhost:8080/hello, dan kami sepatutnya dapat melihat output "Hello, World!"

Kesimpulan:
Menggunakan Docker dan Spring Boot untuk membina aplikasi perkhidmatan mikro kontena boleh memudahkan untuk menggunakan dan mengurus aplikasi. Artikel ini menunjukkan cara menggunakan Docker untuk menyimpan aplikasi Spring Boot melalui contoh mudah dan menyediakan contoh kod khusus. Saya harap artikel ini akan membantu pembaca dalam membina aplikasi perkhidmatan mikro kontena.

Atas ialah kandungan terperinci Bina aplikasi perkhidmatan mikro kontena menggunakan Docker dan Spring Boot. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn