ก่อนอื่นคุณต้องเปิดใช้งานฟังก์ชั่นการเข้าถึงระยะไกลของ Docker เพื่อให้สามารถดำเนินการระยะไกลได้
Centos 6
แก้ไขไฟล์/etc/default/docker และมีผลหลังจากรีสตาร์ท (บริการ Docker รีสตาร์ท)
docker_opts = "-h = unix: ///var/run/docker.sock -h = 0.0.0: 2375"
Centos 7
เปิดไฟล์ /usr/lib/systemd/system/docker.service และแก้ไขบรรทัด ExecStart
คัดลอกรหัสดังต่อไปนี้: execstart =/usr/bin/dockerd -h tcp: //0.0.0.0: 2375 -h unix: ///var/run/docker.sock
มีผลหลังจากรีสตาร์ท
Systemctl daemon-reload systemctl รีสตาร์ท Docker.service
การทดสอบจะมีผลหรือไม่
Curl http://127.0.0.1:2375/info
โครงการ Maven ใหม่
การกำหนดค่า pom.xml มีดังนี้:
<Project xmlns = "http://maven.apache.org/pom/4.0.0" xmlns: xsi = "http://www.w3.org/2001/xmlschema-instance" xsi: schemalocation = "http:/MANCMMMMMMMMMMMMMMMMMMMMMMMMMMBM http://maven.apache.org/xsd/maven-4.0.0.xsd "> <moderVersion> 4.0.0 </modelversion> <modeversion> <springboot.docker </groupid> <RoupID> org.springframework.boot </groupId> <ratifactid> Spring-Boot-Starter-Parent </artifactid> <cersion> 1.5.3.release </เวอร์ชัน> </parent> <properties> <java.version> 1.8 </java.ersion <RoupID> org.springframework.boot </groupId> <ratifactid> Spring-Boot-Starter-Web </artifactid> </serdency> <perdency> <sderctId> </percies> <uffect> <plugins> <molins> <roupId> org.springframework.boot </groupId> <ratifactid> Spring-Boot-Maven-Plugin </artifactid> </plugin> <plugin> <gragin> <การกำหนดค่า> <AmageName> $ {docker.image.prefix}/$ {project.artifactid} </imageName> <DockerDirectory> SRC/Main/Docker </OCKERDIRECTORY> <sournedpath>/</targetath> <ไดเรกทอรี> $ {project.build.directory} </directory> <colled> $ {project.build.finalname} .jar </include> </resource>imageName: ระบุชื่อของภาพdockerDirectory: ระบุตำแหน่งของ DockerFiledockerHost: ระบุที่อยู่ API ของ Docker Remoteresources: หมายถึงไฟล์ที่ต้องจัดทำพร้อมกับ DockerFile และใช้เมื่อสร้างภาพ โดยทั่วไปจะต้องรวมแพ็คเกจขวดแอปพลิเคชันสร้างคลาส Java
แพคเกจสวัสดี; นำเข้า org.springframework.boot.springapplication; นำเข้า org.springframework.boot.autoconfigure.springbootapplication; นำเข้า org.springframework.web.bind.annotation.requestmapping; org.springframework.web.bind.annotation.restcontroller;@springbootapplication@restcontrollerpublic คลาสแอปพลิเคชัน {@requestmapping ("/") สตริงสาธารณะ () {return "Hello Docker World"; } โมฆะคงที่สาธารณะหลัก (สตริง [] args) {springapplication.run (application.class, args); -สร้าง DockerFile
สร้างไฟล์ชื่อ DockerFile ในไดเรกทอรี SRC/Main/Docker และการกำหนดค่ามีดังนี้:
จาก Javavolume /tmpadd Docker-springboot-0.0.1-snapshot.jar app.jarrun bash -c 'touch /app.jar'env java_opts = "" จุดเข้า ["sh", "-c", "java $ java_opts -djava.security.security
จาก Java: หมายถึงภาพ Java ที่จัดทำโดย Hub Docker อย่างเป็นทางการ ด้วยภาพพื้นฐานนี้ DockerFile สามารถรับสถานะโดยตรงผ่านคำสั่ง FROM นั่นคือ java ได้รับการติดตั้งไว้แล้วในคอนเทนเนอร์แล้วเรียกใช้แอปพลิเคชันสปริงบูตผ่านคำสั่งที่กำหนดเอง
Volume /TMP: Directory Create /TMP และยังคงอยู่ในโฟลเดอร์ Docker Data เนื่องจากคอนเทนเนอร์ Tomcat ที่ฝังอยู่ที่ใช้โดย Spring Boot ใช้ /tmp เป็นไดเรกทอรีการทำงานตามค่าเริ่มต้น
เพิ่ม Docker-springboot-0.0.1-snapshot.jar app.jar: คัดลอกแพ็คเกจ jar แอปพลิเคชันไปที่ /app.jar
entryPoint: ระบุคำสั่งที่ดำเนินการโดยค่าเริ่มต้นหลังจากที่คอนเทนเนอร์ทำงาน
โครงสร้างไดเรกทอรีที่สมบูรณ์มีดังนี้:
เรียกใช้คำสั่งต่อไปนี้เพื่อสร้างอิมเมจนักเทียบท่า:
Package Docker: Build
รูปภาพเริ่มต้น Docker
ตรวจสอบว่าโครงการอัพโหลดสำเร็จหรือไม่
เริ่มต้นรหัสคัดลอกรูปภาพดังนี้: Docker Run -p 8888: 8080 Springboot/Docker -Springboot
เข้าถึงผ่านเบราว์เซอร์
ข้างต้นเป็นเนื้อหาทั้งหมดของบทความนี้ ฉันหวังว่ามันจะเป็นประโยชน์ต่อการเรียนรู้ของทุกคนและฉันหวังว่าทุกคนจะสนับสนุน wulin.com มากขึ้น