十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的、可移植的、自给自足的容器。开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机)、bare metal、OpenStack 集群和其他的基础应用平台。
创新互联建站主要从事成都做网站、成都网站建设、成都外贸网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务张家港,十年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18982081108
创建一个springboot工程springboot-docker
package com.gf;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RestController;
@SpringBootApplication
@RestController
public class SpringbootDockerApplication {
public static void main(String[] args) {
SpringApplication.run(SpringbootDockerApplication.class, args);
}
@GetMapping("/{name}")
public String hi(@PathVariable(value = "name") String name) {
return "hi , " + name;
}
}
我们编写一个Dockerfile来定制镜像,在src/main/resources/docker下创建Dockerfile文件
FROM frolvlad/alpine-oraclejdk8:slim
VOLUME /tmp
ADD springboot-docker-0.0.1-SNAPSHOT.jar app.jar
RUN sh -c 'touch /app.jar'
ENV JAVA_OPTS=""
ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS -Djava.security.egd=file:/dev/./urandom -jar /app.jar" ]
我们通过maven 构建docker镜像。
在maven的pom目录,加上docker镜像构建的插件
4.0.0
org.springframework.boot
spring-boot-starter-parent
2.1.1.RELEASE
com.gf
springboot-docker
0.0.1-SNAPSHOT
jar
springboot-docker
Demo project for Spring Boot
UTF-8
UTF-8
1.8
gf
org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-starter-test
test
org.springframework.boot
spring-boot-maven-plugin
com.spotify
docker-maven-plugin
1.2.0
${docker.image.prefix}/${project.artifactId}
src/main/resources/docker
/
${project.build.directory}
${project.build.finalName}.jar
我们运行下面的命令构建镜像:
mvn clean
mvn package docker:bulid
构建成功后,我们通过下面的命令查看镜像:
docker images
启动镜像:
#c2dba352c3c1 为镜像ID
docker run -p 8080:8080 -t c2dba352c3c1
之后我们就可以访问服务了。
源码:https://github.com/gf-huanchupk/SpringBootLearning
欢迎关注我的公众号《程序员果果》,关注有惊喜~~