本身写吧。。。。我放个测试的java
package com.pibigstar.web;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
public class IndexController {
@RequestMapping("/")
public String toIndex() {
return "index";
}
@RequestMapping("/hello")
@ResponseBody
public String hello() {
return "Hello pibigstar";
}
}
# Docker image for springboot file run
# VERSION 0.0.1
# Author: pibigstar
# 基础镜像使用java
FROM java:8
# 做者
MAINTAINER pibigstar <741047261@qq.com>
# VOLUME 指定了临时文件目录为/tmp。
# 其效果是在主机 /var/lib/docker 目录下建立了一个临时文件,并连接到容器的/tmp
VOLUME /tmp
# 将jar包添加到容器中并改名为app.jar
ADD onlineSpider-0.0.1-SNAPSHOT.jar app.jar
# 运行jar包
RUN bash -c 'touch /app.jar'
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
若是是第一次打包,它会自动下载java 8的镜像做为基础镜像,之后再制做镜像的时候就不会再下载了。python
若是不会安装docker的能够看我以前的博客。。。这里就不赘述了web
在服务器中新建一个文件夹用来存放咱们的项目文件 mkdir docker
spring
将打包好的jar包和Dockerfile文件上传到此文件夹中,而后进入此文件夹cd docker
docker
执行下面命令, 看好,最后面有个 .
点!浏览器
docker build -t springboot-demo .
-t
参数是指定此镜像的tag名springboot
制做完成后经过下面命令查看咱们制做的镜像bash
docker images
有不少人搞不定镜像和容器的关系,其余他俩比较像java中的类与实例,镜像就比如类,而容器就是镜像的一个实例服务器
执行下面命令启动容器app
docker run -d -p 8081:8080 springboot-demo
-d
参数是让容器后台运行
-p
是作端口映射,此时将服务器中的8081端口映射到容器中的8080端口
直接浏览器访问: http://你的服务器ip地址:8081/hello 便可查看效果