使用Dockerfile将jar包打成docker镜像
1:准备docker环境
1.1:部分网站地址
docker官网:http://www.docker.com
docker中文网站:https://www.docker-cn.com/
Docker Hub仓库官网: https://hub.docker.com/
1.2环境要求
CentOS 6.5 (64-bit) 或更高的版本,要求系统为64位、系统内核版本为 2.6.32-431 或者更高版本。
1.3安装
官网中文安装手册:https://docs.docker-cn.com/engine/installation/linux/docker-ce/centos/#prerequisites
yum -y remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine
1.3.2安装gcc
yum -y install gcc yum -y install gcc-c++
1.3.3安装需要的软件包
yum install -y yum-utils device-mapper-persistent-data lvm2
1.3.4设置yum仓库
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
1.3.5更新yum软件包索引
yum makecache fast
1.3.6安装DOCKER CE
yum -y install docker-ce
1.3.7启动
systemctl start docker
2:Dockerfile、jar包准备
2.1在合适的位置新建文件夹,把jar包上传进去,并且新建一个文件名为Dockerfile,注意首字母是大写 jar包一般跟Dockerfile文件在同一个文件夹下
2.2编辑Dockerfile文件内容
#基础镜像使用java8 FROM java:8 # 作者 MAINTAINER lqb # VOLUME 指定临时文件目录为/tmp,在主机/var/lib/docker目录下创建了一个临时文件并链接到容器的/tmp VOLUME /tmp # 将jar包添加到容器中并更名为test.jar ADD test.jar test.jar # 运行jar包 RUN bash -c 'touch /test.jar' ENTRYPOINT ["java","-jar","/test.jar"] #暴露端口8080 EXPOSE 8080
2.3执行命令,将镜像生成
docker build -t test:1.0 .
查看镜像
3:启动镜像并测试
当然此处可能会报错,可能会说防火墙啥的,处理防火墙端口啥的请看另一个博客链接
https://www.cnblogs.com/aiqingbi-aifeifei/p/14176154.html
访问一下路径
至此,这个jar就被通过镜像的方式进行了启动,当然如果系统诸多的情况下,就需要使用Docker-compose容器编排,此处就先不进行演示,后面有时间再进行演示