上一篇文件介绍了《Docker基础》,介绍类介绍如何使用docker发布java项目。
一、 项目打包
首先,Docker部署项目前,先将项目打包好,比如达成jar文件,最好直接测试jar是否可运行
1 java -jar your-app.jar --server.port=8081
然后,将打包好的文件放到服务器指定位置

二、制作Dockerfile文件
创建Dockerfile文件前要有一个满足项目运行的镜像,比如,项目需要jdk8,这个镜像时新镜像的基础,创建Dockerfile
1 touch Dockerfile
vim编辑Dockerfile文件
1 # 基于哪个镜像 2 FROM java:8 3 4 # 将本地文件夹挂载到当前容器 5 VOLUME /tmp 6 7 # 拷贝文件到容器,也可以直接写成ADDserver-1.0.0.jar app.jar,/app.jar是容器的path 8 ADD server-1.0.0.jar app.jar 9 RUN bash -c 'touch /app.jar' 10 11 # 开放8081端口 12 EXPOSE 8081 13 14 # 配置容器启动后执行的命令,即java -jar app.jar --server.port=8081命令 15 ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar","--server.port=8081"]
三、制作镜像
有了Dockerfile文件,便可以创建docker镜像
1 docker build -t house/user .
注意,最后有“.”参数
通过命令查看镜像
1 docker images

四、运行容器
有了镜像,可以创建容器
1 docker run -d --hostname user --name user-server -p 8081:8081 house/user
-d 表示后台运行
--hostname 表示容器的hostname
--name 表示容器的名称
-p 表示映射的端口,宿主机端口:容器端口
查看正在运行的容器
1 docker ps
如果启动异常可以查询日志
docker logs container_id
五、测试项目
如果防火墙没开放端口,需要开放端口
1 firewall-cmd --add-port 8081/tcp --permanent 2 3 firewall-cmd --reload
再浏览器输入访问地址,测试是否可以正是访问项目
