Efek terakhir adalah sebagai berikut
Ada kira -kira beberapa langkah
1. Instal Docker CE 2. Jalankan Redis Image 3. Java Lingkungan Persiapan 4. Persiapan Proyek 5. Tulis Dockerfile 6. Proyek Rilis 7. Layanan Uji
Persiapan Lingkungan
1. Pasang Docker CE
Jangan merekomendasikan menggunakannya di Cina: "Skrip untuk instalasi", itu akan diunduh dan diinstal dengan sangat lambat. Gunakan Langkah 1 untuk menginstalnya, lihat tautan berikut: Metode Instalasi Umum
1. Metode instalasi reguler
Ubuntu 17.04 x64 Instal Docker CE
http://www.ymq.io/2018/01/11/docker-install-docker-ce
2. Instal skrip
Script tidak disarankan untuk instalasi domestik:
Instal Docker CE
$ curl -fssl get.docker.com -o get-docker.sh $ sudo sh get-docker.sh
<output terpotong> Jika Anda ingin menggunakan Docker sebagai pengguna non-root, Anda sekarang harus mempertimbangkan pengguna Anda ke grup "Docker" dengan sesuatu seperti: sudo usermod -ag docker Anda-menggunakan-pengguna, bahwa Anda harus masuk dan kembali ke tuan rumah yang digunakan untuk menggunakan can. Lihat https://docs.docker.com/engine/security/security/#docker-daemon-attack-surface untuk informasi lebih lanjut.
Verifikasi Docker CE
Verifikasi bahwa Docker CE diinstal dengan benar dengan menjalankan gambar Hello-World
$ sudo docker run hello-worldroot@souyunku: ~# sudo docker ImagesRepository Tag ID ID Dibuat SizeHello-World terbaru F2A91732366C 7 minggu lalu 1.85KB
2. Jalankan gambar Redis
1. Jalankan cermin
$ docker run --name redis-6379 -p 6379:6379 -d redisUnable to find image 'redis:latest' locallylatest: Pulling from library/redisc4bb02b17bb4: Pull complete 58638acf67c5: Pull complete f98d108cc38b: Pull complete 83be14fccb07: Pull complete 5D5F41793421: Tarik Lengkap ED89FF0D9EB2: Tarik Pencernaan Lengkap: SHA256: 0E773022CD6572A5153E5013AFCED0F7191652D3CDF9B1C6785EB13F6B2974B1SDF9B1C6785B13F6B2974B1SDF9B1C6785EB13F6B2944B1STRATUS: REDIS: terbaru2f1f20f672e386a61644e1c08232ea34bdfd6a0c244b55fa833fcfd6dd207288
2. Periksa cermin
Lihat cermin
root@souyunku: ~# gambar docker redisrepository tag Image ID dibuat sizeredis terbaru 1e70071f4af4 4 minggu lalu 107MB
Lihat proses cermin
root@souyunku: ~# docker pscontainer id gambar perintah dibuat port status nama2f1f20f672e3 redis "docker-entrypoint.s ..." 14 detik yang lalu naik 14 detik 0,0.0.0:6379->6379/TCP Redis-6379
Lihat proses wadah
root@souyunku: ~# container docker pscontainer id gambar perintah dibuat port status names2f1f20f672e3 redis "docker-entrypoint.s ..." 7 menit yang lalu naik 7 menit 0.0.0: 6379-> 6379/TCP REDIS-6379
3. Layanan Tes Redis
Hubungkan ke Layanan Redis melalui Redis-Cli untuk menguji data penyimpanan
root@souyunku: ~# docker run -it - -link redis -6379: redis --rm redis redis -cli -h redis -p 6379redis: 6379> Set Count 1okredis: 6379> Get Count "1" Redis: 6379> Exitroot@Souyunu: ~
3. Persiapan Lingkungan Java
Catatan: Baca langkah -langkah berikut! Lai Lai
1. Lingkungan Java adalah untuk mengkompilasi proyek sampel GitHub Maven Springboot dan mempersiapkan
2. Atau Anda dapat mengkompilasi dan mengunggah sendiri secara lokal. Kemudian instal lingkungan Java berikut: JDK, Maven, Git, dan Anda dapat melakukannya tanpa konfigurasi.
1. Instal JDK
Unduh Metode JDK: 1
Unduh JDK1.8 di Linux Environment, silakan kunjungi (situs web resmi) untuk mengunduh file instalasi JDK
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
Unduh Metode JDK: 2
Tautan saya di Baidu Cloud Disk: http://pan.baidu.com/s/1jifzf9s Kata sandi: u4n4
Unduh Metode JDK: 3
Gunakan wget untuk diunduh,
$ wget ---no-cookies ---no-check-certificate --teader "cookie: gpw_e24 = http%3a%2f%2fwww.oracle.com%2f; oraclelicense = accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u141-b15/336fa29ff2bb4ef291e347e091f7f4a7/jdk-8u141-linux-x64.tar.gz
Catatan, jika menggunakan: Unduh metode JDK: 3
Kemudian, dalam langkah -langkah berikut, JDK1.8.0_144 digantikan oleh JDK1.8.0_141
Mulai instalasi
Unggah In /Opt Directory
Dekompresi
$ cd /opt $ tar zxvf jdk-8u144-linux-x64.tar.gz $ mv jdk1.8.0_144 / /lib /jvm
Konfigurasikan variabel lingkungan
$ vi/etc/profile#jDkeExport java_home =/lib/jvMexport jre_home = $ {java_home}/jre ekspor classpath = .: $ {java_home}/lib: $ {jre_home}/lib jalur ekspor = $ {java_ hava_Membuat variabel lingkungan efektif
$ source /etc /profile
memeriksa
root@souyunku: ~# java -versionjava versi "1.8.0_141" Java (TM) SE RUNTIME EVERVING (Build 1.8.0_141-B15) Java Hotspot (TM) Server 64-bit VM (Build 25.141-B15, Mode Campuran)
2. Instal Maven
$ apt-get install maven
Verifikasi Maven
root@souyunku: ~# mvn -vapache maven 3.3.9maven home:/usr/share/mavenjava versi: 1.8.0_141, vendor: oracle corporationjava home:/lib/jvm/jedefault lokal: en_us, platform encoding: utf-8os nama: "LINUX:" EN_US: EN_US: Platform: UTF-8OS: "LINUX:" LINUX: "EN_US: ENCALE: ENCALE: ENCALE: ENCALE: ENCALE: ENCALE: ENCALE: ENCALE: ENCALE: ENCALE: ENCALE: ENCALE: ENCALE: LIB-8OS: LIB/JVM," "amd64", keluarga: "unix"
3. Pasang git
$ apt-get install git
Verifikasi Maven
root@souyunku: ~# git --versionGit versi 2.11.0
4. Persiapan Proyek
1. Kompilasi proyek
1. Kompilasi proyek di server Maven sendiri
Gunakan git untuk mengkloning proyek
$ git clone https://github.com/souyunku/other-projects.git
Gunakan Maven untuk mengkompilasi proyek
$ CD Lainnya Projects/Docker-Spring-Boot-Demo/
2. Ubah proyek
Modifikasi alamat server redis spring.redis.host = 45.32.44.217 menjadi IP lokal. Saat menjalankan gambar Redis, Redis telah dibuat menjadi layanan jaringan eksternal 0.0.0.0:6379->6379/TCP
$ VI SRC/Main/Resources/Application.Properties# Redis Alamat Server Spring.redis.host = 45.32.44.217 $ MVN Paket
Salin proyek Docker-Spring-Boot-Demo-0.0.1-Snapshot.jar di target / direktori ke direktori / opt dan akan digunakan nanti
$ CP Target/Docker-Spring-Boot-Demo-0.0.1-snapshot.jar/opt/
2. Kompilasi proyek di Maven lokal dan unggah ke direktori /opt dan akan digunakan nanti
Ubah alamat server redis application.properties
Projects/Docker-Spring-Boot-Demo/SRC/Main/Resources/Applicies.Properti# Redis Alamat Server Spring.redis.host = 45.32.44.217# Redis = 45.32.44.217
5. Tulis Dockerfile
Menulis Dockerfile Berdasarkan Java: 8 Gambar
$ CD /opt /$ touch Dockerfile $ VI Dockerfile
Konten yang diedit adalah sebagai berikut
# Berdasarkan gambar mana dari java: 8# pasang folder lokal ke volume kontainer saat ini /tmp# Salin file ke wadah, atau tulis secara langsung karena tambahkan docker-spring-boot-demo-0.0.1-snapshot.jar /souyunku-app.jaradd docker-pring-boot-demo-0.0.0.1.1pnuPshot.jaradd Souy-pring-pring-boot-demo-0.0.0.0.0.0.0.0.0.0.0.0.0.0.1.1. 'Touch /souyunku-App.jar'# Buka 80 port Expose 80# Konfigurasikan titik entri perintah setelah wadah dimulai ["java", "-djava.security.egd = file:/dev /./ urandom", "-jar", "/soyununu-app.apjar"]]
Vi. Publikasikan proyek
1. Kompilasi gambar
$ CD /opt /$ docker build -t souyunku -app: v1.
Melihat informasi berikut membuktikan bahwa dockerfile Anda tidak buruk, dan gambar telah berhasil dikompilasi
Sending build context to Docker daemon 18.72MBStep 1/6 : FROM java:88: Pulling from library/java5040bd298390: Pull complete fce5728aad85: Pull complete 76610ec20bf5: Pull complete 60170fec2151: Pull complete e98f73de8f0d: Pull complete 11f7af24ed9c: Pull complete 49E2D6393F32: Tarik Lengkap BB9CDEC9C7F3: Tarik Pencernaan Lengkap: SHA256: C1FF613E8BA25833D2E1940DA0940C3824F03F802C449F3D18155A66B7F03F802C449F3D18155A66B7F03F8F802C49F3D18155A66B7F03F8F80C49F3D18155A66B7F03F80C49F3D18155A66B7F03C0E9C. ---> D23BDF5B1B1BSTEP 2/6: Volume/TMP ---> Berlari di 0559A62B0CD5Removing Container Intermediate 0559A62B0CD5 ---> B1F3846913A4STEP 3/6: Tambahkan Docker-Spring-Boots.roPo.roPo.jot.jot. souyunku-app.jar ---> 9f60dad5d2acStep 4/6 : RUN bash -c 'touch /souyunku-app.jar' ---> Running in 39d5c09ab614Removing intermediate container 39d5c09ab614 ---> 2b691adf7922Step 5/6 : EXPOSE 80 ---> Running in 11a577437a23removing wadah menengah 11a577437a23 ---> 78815d6fe6b2step 6/6: entrypoint ["java", "-djava.security.egd = file:/dev /./ urandom", "-jar",/singpd = s.jo.joP.jo. ECA10FED3D02Removing Container Intermediate ECA10FED3D02 ---> 8ec4e85a0f05 Successly Dibangun 8ec4e85A0F05 SUSUCSUSTER DENGAN SOUYUNUKU-APP: V1
2. Lihat cermin
root@souyunku:/opt# gambar docker souyunku-apprepository tag Im Id ID dibuat sizeyununku-app v1 8ec4e85a0f05 2 menit yang lalu 681MB
3. Jalankan cermin
Daemon latar belakang berjalan, dan kemudian memetakan port wadah ke port jaringan eksternal 80
root@souyunku:/opt# docker run --name myspringboot -d -p 80:80 souyunku -app: v1e68d438603619e363883d4eae65d3918e1c3e00f867731207bccf06f56646464646464646464646464646464
4. Lihat prosesnya
Periksa proses kontainer dan Anda dapat melihat bahwa Redis ada di port 6379 dan proyek myspringboot ada di port 80.
root@souyunku:/opt# docker container psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMESe68d43860361 souyunku-app:v1 "java -Djava.securit..." About a minute ago Up About a minute 0.0.0.0:80->80/tcp MySpringBoot0f9646171edd redis "Docker-entrypoint.s ..." 39 menit yang lalu naik 39 menit 0.0.0.0:6379->6379/TCP REDIS-6379
7. Layanan Pengujian
Akses Browser: http://127.0.0.1/, tentu saja saya tidak memasukkan 127.0.0.1 Saya melakukannya langsung di server dan menggunakan IP publik
Docker menyusun
Docker Compose adalah salah satu proyek orkestrasi Docker resmi, yang bertanggung jawab untuk dengan cepat menggunakan aplikasi terdistribusi dalam kelompok.
Aplikasi yang menggunakan wadah Docker biasanya terdiri dari beberapa kontainer. Dengan Docker Compose , Anda tidak perlu lagi menggunakan skrip shell untuk memulai wadah. Dalam file konfigurasi, semua wadah ditentukan oleh layanan, dan kemudian menggunakan skrip komposisi Docker untuk memulai, menghentikan dan memulai kembali aplikasi, dan layanan dalam aplikasi dan semua kontainer yang bergantung pada layanan.
Meringkaskan
Di atas adalah kode contoh untuk proyek Springboot Penyebaran Docker yang diperkenalkan oleh editor kepada Anda. Saya harap ini akan membantu Anda. Jika Anda memiliki pertanyaan, silakan tinggalkan saya pesan dan editor akan membalas Anda tepat waktu. Terima kasih banyak atas dukungan Anda ke situs web Wulin.com!