首先需要开启码头工人远程访问功能,以便可以进行远程操作。
<强> CentOS 6 强>
修改/etc/违约/码头工人文件,重启后生效(服务码头工人重启)。
DOCKER_OPTS=" - h=unix:///var/运行/码头工人。袜子- h=0.0.0.0:2375 "
<强> CentOS 7 强>
打开/usr/lib/systemd/系统/docker.service文件,修改ExecStart这行。
代码如下:ExecStart=/usr/bin/dockerd - h tcp://0.0.0.0:2375 - h unix:///var/运行/docker.sock
重启后生效
systemctl daemon-reload systemctl重启码头工人。服务
测试是否生效
curl http://127.0.0.1:2375信息
<强>新建Maven工程强>
pom.xml配置如下:
& lt;项目xmlns=" http://maven.apache.org/POM/4.0.0 " xmlns: xsi=" http://www.w3.org/2001/XMLSchema-instance " xsi: schemaLocation=" http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd”比; & lt; modelVersion> 4.0.0 & lt; groupId> test.springboot.docker & lt; artifactId> docker-springboot & lt; version> 0.0.1-SNAPSHOT & lt; parent> & lt; groupId> org.springframework.boot & lt; artifactId> spring-boot-starter-parent & lt; version> 1.5.3.RELEASE & lt;/parent> & lt; properties> & lt; java.version> 1.8 & lt;/java.version> & lt;/properties> & lt; dependencies> & lt; dependency> & lt; groupId> org.springframework.boot & lt; artifactId> spring-boot-starter-web & lt;/dependency> & lt; dependency> & lt; groupId> org.springframework.boot & lt; artifactId> spring-boot-starter-test & lt; scope> test & lt;/dependency> & lt;/dependencies> & lt; build> & lt; plugins> & lt; plugin> & lt; groupId> org.springframework.boot & lt; artifactId> spring-boot-maven-plugin & lt;/plugin> & lt; plugin> & lt; groupId> com.spotify & lt; artifactId> docker-maven-plugin & lt; version> 0.4.14 & lt; configuration> & lt; imageName> $ {docker.image.prefix}/{project.artifactId} & lt;美元/imageName> & lt; dockerDirectory> src/main/docker & lt; dockerHost> http://192.168.1.200:2375</dockerHost> & lt; resources> & lt; resource> & lt; targetPath>/& lt;/targetPath> & lt; directory> $ {project.build.directory} & lt;/directory> & lt; include> $ {project.build.finalName} .jar & lt;/resource> & lt;/resources> & lt;/configuration> & lt;/plugin> & lt;/plugins> & lt;/build> & lt;/project>
-
<李> <代码> imageName: 代码>指定了镜像的名字李>
<李> <代码> dockerDirectory: 代码>指定Dockerfile的位置李>
<李> <代码> dockerHost: 代码>指定码头工人远程API地址李>
<李> <代码>资源:代码>指那些需要和Dockerfile放在一起,在构建镜像时使用的文件,一般应用jar包需要纳入李>
<>强创建Java类强>
包你好; 进口org.springframework.boot.SpringApplication; 进口org.springframework.boot.autoconfigure.SpringBootApplication; 进口org.springframework.web.bind.annotation.RequestMapping; 进口org.springframework.web.bind.annotation.RestController; @SpringBootApplication @RestController 公共类应用程序{ @RequestMapping (“/? 公共字符串回家(){ 返回“你好世界码头工人”; } 公共静态void main (String [] args) { SpringApplication.run (Application.class, args); } }
<>强创建Dockerfile 强>
在src/main/码头工人目录下创建一个名为Dockerfile的文件,配置如下:
从java 体积/tmp 添加docker-springboot-0.0.1-SNAPSHOT。jar app.jar 运行bash - c '触摸/app.jar ' ENV JAVA_OPTS=" " 入口点(“上海”、“c”,“java $ JAVA_OPTS -Djava.security.egd=文件:/dev/?urandom jar/应用程序。jar”)
从java:指码头工人中心上官方提供的java镜像,有了这个基础镜像后,Dockerfile可以通过