春天的引导与码头工人部署实践

  

首先需要开启码头工人远程访问功能,以便可以进行远程操作。

  

<强> 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可以通过

春天的引导与码头工人部署实践