Jadual Kandungan
Direktori projek
fail fail docker
Pengedaran Fail
Jana imej
Mulakan bekas
Akses web
penyerahan pemetaan pakej jar
Pengaturan skrip
Lihat log docker
Masalah yang dihadapi
Rumah Java javaTutorial Cara docker menggunakan SpringBoot dan menggantikan pakej jar

Cara docker menggunakan SpringBoot dan menggantikan pakej jar

May 12, 2023 pm 02:16 PM
docker jar springboot

Direktori projek

Cara docker menggunakan SpringBoot dan menggantikan pakej jar

fail fail docker

Buat fail fail docker, yang akan digunakan kemudian.

Pengedaran Fail

Buat folder /data/docker/helllolearn baharu pada pelayan (laluan fail boleh disesuaikan), dan salin pakej balang berpakej maven dan fail fail docker yang dibuat di atas ke pelayan Cipta folder baharu (/data/docker/hellolearn).

Cara docker menggunakan SpringBoot dan menggantikan pakej jar

Jana imej

docker build -t hellolearn .

docker build -t Nama imej: label dockerfile Kedudukan relatif, titik mewakili direktori semasa, dan lalai adalah terkini jika tiada teg ditulis.

Cara docker menggunakan SpringBoot dan menggantikan pakej jar

Mulakan bekas

docker run -d -p 8301:8301 --name hellolearn hellolearn

docker start hellolearn

Parameter -d adalah untuk membiarkan bekas berjalan di latar belakang; --p adalah untuk pemetaan port pada masa ini (port sebelum kolon) port dalam pelayan dipetakan ke bekas Port 8301 (port selepas kolon) (application.properties dikonfigurasikan dengan 8301)

Akses web

Cara docker menggunakan SpringBoot dan menggantikan pakej jar

penyerahan pemetaan pakej jar

Mengikut langkah di atas sudah cukup untuk mengendalikan keseluruhan proses penempatan docker springboot dengan mudah. Tetapi selepas memulakan bekas, setiap kali pakej balang perlu dikemas kini, imej mesti dibuat semula, dan kemudian bekas mesti dibuat semula. Proses ini sangat rumit dan tidak cekap. Jadi bagaimana untuk mengemas kini pakej balang secara langsung untuk melengkapkan penggunaan tanpa mengemas kini imej atau bekas?

5.1 Kemas kini fail docker

Barisan terakhir  entrypoint ["java","-jar","/data/learn-web-0.0.1-snapshot.jar"]  akan menjalankan fail learn-web-0.0.1-snapshot.jar dalam direktori /data dalam bekas.

5.2 Gunakan arahan docker build untuk membina imej

docker build -t hellolearn .

5.3 Cipta & mulakan bekas

docker run --name hellolearn -it -v /data/docker/newhellolearn/package:/data -d -p 8301:8301 hellolearn

-v Direktori hos dikaitkan dengan direktori kontena. Dengan cara ini, direktori /data/docker/newwellolearn/package hos dipetakan ke direktori /data docker.

Dalam kes ini, apabila pakej jar berubah, anda boleh terus mengemas kini pakej jar dalam direktori /data/docker/newwellolearn/package selepas mengemas kini pakej jar, anda perlu memulakan semula bekas .

Pengaturan skrip

Kaedah penggunaan pakej balang menyebabkan masalah Jika nama pakej balang berubah, seperti perubahan nombor versi (learn-web-0.0.1-snapshot.jar--. > >belajar-web-1.0.1-snapshot.jar). Apa yang perlu dilakukan? Kaedah ketiga penggunaan melalui skrip diperkenalkan di bawah.

6.1 Cipta fail hellolearn.sh

java -jar /data/learn-web-0.0.1-snapshot.jar

Letak hellolearn. sh dimuat naik ke /data/docker/helllolearn/scriptdeploy/package. Laluan folder ini boleh disesuaikan. Ingat laluan folder ini, yang akan digunakan kemudian.

6.2 Tambah kebenaran pelaksanaan skrip

chmod +x hellolearn.sh

6.3 Cipta fail docker

cmd ["sh","-c","/data/hellolearn.sh"]  dinyatakan dalam bekas Mulakan skrip hellolearn.sh yang dibuat dalam 6.1 semasa permulaan.

Perhatikan bahawa arahan terakhir yang dinyatakan di atas ialah titik masuk, yang ditukar kepada cmd dalam penggunaan skrip Jika anda berminat dengan perbezaan khusus antara titik masuk dan cmd, anda boleh mengetahui lebih lanjut.

6.4 Muat naik pakej jar

Letakkan pakej jar ke dalam direktori folder yang sama seperti hellolearn.sh, iaitu, /data/docker/hellolearn/scriptdeploy/package, dan kemudian tambah direktori ini apabila mencipta bekas (direktori hos) dipetakan ke direktori /data bekas. .

6.5 Gambarajah Struktur Direktori Fail

Cara docker menggunakan SpringBoot dan menggantikan pakej jar

Saya tidak tahu sama ada anda keliru tentang struktur direktori di sini saya memuat naik gambar rajah struktur direktori hos saya mesin untuk menjadikannya jelas sekali imbas.

6.6 Cipta imej

docker build -t hellolearn-script . Tempoh pada akhir

mewakili direktori semasa, jadi arahan untuk menjana imej perlu berada dalam Laksanakan dalam direktori di mana fail docker berada.

6.7 Buat & mulakan bekas

docker run --name hellolearn-script -it -v /data/docker/hellolearn/scriptdeploy/package:/data -d -p 8302 :8301 hellolearn-script

docker mulakan hellolearn-script

Kaitkan direktori /data/docker/hellolearn/scriptdeploy/package hos dengan pemetaan direktori /data bekas. Dalam kes ini, apabila pakej balang berubah, cuma kemas kini pakej balang dalam direktori hos secara terus. Walaupun nama pakej jar berubah, anda masih perlu mengemas kini skrip hellolearn.sh. Mulakan semula bekas selepas mengemas kini.

Kesan ujian web 6.8

Cara docker menggunakan SpringBoot dan menggantikan pakej jar

Lihat log docker

log docker [pilihan] id bekas

penerangan pilihan:

-f: Jejak keluaran log
--sejak: Paparkan semua log pada masa mula tertentu
-t: Paparkan cap masa
-- ekor : Senaraikan hanya n log kontena terkini

7.1 Lihat log selepas masa yang ditetapkan, hanya paparkan 100 baris terakhir:

log docker -f -t -- since="2020-10-01" --tail=100 id kontena

7.2 Semak log tempoh masa yang ditentukan

log buruh pelabuhan -t --sejak ="2020-10-01t19:00:00" --sehingga "2020-10-01t19:00:00" id bekas

7.3 Lihat log selepas masa yang ditetapkan:

log buruh pelabuhan -t --since="2020-10-01t19:00:00" id bekas

7.4 Lihat log 5 minit terakhir:

log buruh pelabuhan --sejak id kontena 5m

7.5 Laksanakan bash pada bekas yang ditentukan melalui perintah exec:

docker exec hellolearn -it /bin/bash  atau  docker exec -it hellolearn bash

7.6 Lihat ip docker

docker inspect --format='{{.networksettings.ipaddress}}' hellolearn

Masalah yang dihadapi

Perihalan masalah : tindak balas ralat daripada daemon: pemandu gagal memprogramkan sambungan luaran pada titik akhir flamboyant_leavitt (iptables gagal: iptables --wait -t nat -a docker -p tcp -d 0/0 --dport 8301 -j dnat --to-destination 172.17. 0.2 :8301 ! -i docker0: iptables: tiada rantai/sasaran/padanan dengan nama itu.

Penyelesaian: Mulakan semula docker.  systemctl restart docker

Atas ialah kandungan terperinci Cara docker menggunakan SpringBoot dan menggantikan pakej jar. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Cara menggunakan desktop docker Cara menggunakan desktop docker Apr 15, 2025 am 11:45 AM

Bagaimana cara menggunakan desktop Docker? Docktop Docktop adalah alat untuk menjalankan bekas Docker pada mesin tempatan. Langkah -langkah untuk digunakan termasuk: 1. Pasang desktop Docker; 2. Mulakan desktop Docker; 3. Buat imej Docker (menggunakan Dockerfile); 4. Membina imej Docker (menggunakan Docker Build); 5. Jalankan bekas Docker (menggunakan Docker Run).

Cara Membaca Versi Docker Cara Membaca Versi Docker Apr 15, 2025 am 11:51 AM

Untuk mendapatkan versi Docker, anda boleh melakukan langkah -langkah berikut: Jalankan arahan Docker "Docker -version" untuk melihat versi klien dan pelayan. Untuk MAC atau Windows, anda juga boleh melihat maklumat versi melalui tab versi Docktop GUI atau menu desktop Docker.

Cara membuat cermin di Docker Cara membuat cermin di Docker Apr 15, 2025 am 11:27 AM

Langkah -langkah untuk membuat imej Docker: Tulis Dockerfile yang mengandungi arahan membina. Bina imej di terminal, menggunakan arahan membina Docker. Tag imej dan tetapkan nama dan tag menggunakan arahan tag docker.

Cara mengemas kini imej Docker Cara mengemas kini imej Docker Apr 15, 2025 pm 12:03 PM

Langkah -langkah untuk mengemas kini imej Docker adalah seperti berikut: Tarik tag imej terkini imej baru memadam imej lama untuk tag tertentu (pilihan) mulakan semula bekas (jika diperlukan)

Cara menyalin fail di Docker ke luar Cara menyalin fail di Docker ke luar Apr 15, 2025 pm 12:12 PM

Kaedah untuk menyalin fail ke tuan rumah luaran di Docker: Gunakan arahan CP Docker: Jalankan Docker CP [Options] & lt; Container Path & GT; & lt; PATH HOST & GT;. Menggunakan jumlah data: Buat direktori pada tuan rumah, dan gunakan parameter -V parameter untuk memasang direktori ke dalam bekas apabila membuat bekas untuk mencapai penyegerakan fail bidirectional.

Cara memeriksa nama bekas Docker Cara memeriksa nama bekas Docker Apr 15, 2025 pm 12:21 PM

Anda boleh menanyakan nama kontena Docker dengan mengikuti langkah -langkah: Senaraikan semua bekas (Docker PS). Tapis senarai kontena (menggunakan arahan grep). Mendapat nama kontena (terletak di lajur "Nama").

Cara Mengubah Sumber Imej Docker di China Cara Mengubah Sumber Imej Docker di China Apr 15, 2025 am 11:30 AM

Anda boleh beralih ke sumber cermin domestik. Langkah -langkah adalah seperti berikut: 1. Edit fail konfigurasi /etc/docker/daemon.json dan tambahkan alamat sumber cermin; 2. Selepas menyimpan dan keluar, mulakan semula perkhidmatan Docker Sudo SystemCtl Docker untuk meningkatkan kelajuan muat turun dan kestabilan imej.

Cara Menyelamatkan Gambar Docker Cara Menyelamatkan Gambar Docker Apr 15, 2025 am 11:54 AM

Untuk menyimpan imej di Docker, anda boleh menggunakan arahan Docker Commit untuk membuat imej baru, yang mengandungi keadaan semasa bekas yang ditentukan, Sintaks: Docker Commit [Options] Nama Imej Container ID. Untuk menyimpan imej ke repositori, anda boleh menggunakan arahan PUSH Docker, Sintaks: Docker Push Nama Imej [: TAG]. Untuk mengimport imej yang disimpan, anda boleh menggunakan arahan tarik docker, sintaks: docker tarik nama imej [: tag].

See all articles