1.将需要发布的项目打成war包;
maven项目直接 package指令就行:
2. 编写Dockerfile文件(新建一个txt文件即可)
# Docker image for demo file run
# VERSION 0.0.1
# Author: smallgourd
# 基础镜像使用java
FROM java:8
# 作者
MAINTAINER smallgourd<13584278267@163.com>
# VOLUME 指定了临时文件目录为/tmp。
# 其效果是在主机 /var/lib/docker 目录下创建了一个临时文件,并链接到容器的/tmp
VOLUME /tmp
# 将jar包添加到容器中并更名为app.jar
ADD demo-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"]
Dockerfile指令详解:https://www.cnblogs.com/dazhoushuoceshi/p/7066041.html
3. 部署文件
在服务器中新建一个文件夹用来存放我们的项目文件
mkdir docker
将打包好的jar包和Dockerfile文件上传到此文件夹中,然后进入此文件夹
cd docker
4. 制作镜像
执行下面命令, 看好,最后面有个 . 点!
docker build -t gourd-demo .
-t 参数是指定此镜像的tag名
制作完成后通过下面命令查看我们制作的镜像
docker images
5. 启动容器
有很多人搞不定镜像和容器的关系,其他他俩比较像java中的类与实例,镜像就好比类,而容器就是镜像的一个实例
执行下面命令启动容器
docker run -d -p 8081:8080 gourd-demo
-d参数是让容器后台运行
-p 是做端口映射,此时将服务器中的8081端口映射到容器中的8080端口
6. 访问
直接浏览器访问: http://你的服务器ip地址:8081/接口名 即可查看效果