Docker 采用 Dockerfile 安装 jdk11.0.3 并部署SpringBoot项目实例
1、去Oracle官网提前下载好所需的 jdk,linux版本
本地建立 mydockerfile 文件夹,并将jdk copy到文件夹下
2、在 mydockerfile 文件夹中建立 Dockerfile,其内容如下:
# Docker image for springboot file run
# VERSION 0.0.1
# Author: hanquan
# 建立一个新的镜像文件,配置模板:新建立的镜像是以centos为基础模板
# 因为jdk必须运行在操作系统之上
FROM centos:7
# 作者名 作者邮箱
MAINTAINER hanquan <15801016967@163.com>
# 创建一个新目录来存储jdk文件
RUN mkdir /usr/local/java
#将jdk压缩文件复制到镜像中,它将自动解压缩tar文件
ADD jdk-11.0.3_linux-x64_bin.tar.gz /usr/local/java/
# 创建软连接 ln -s 源文件 目标文件
# RUN ln -s /usr/local/java/jdk-11.0.3 /usr/local/java/jdk
# 设置环境变量
ENV JAVA_HOME /usr/local/java/jdk-11.0.3
ENV PATH $JAVA_HOME/bin:$PATH
# VOLUME 指定了临时文件目录为/tmp
# 其效果是在主机 /var/lib/docker 目录下创建了一个临时文件,并链接到容器的/tmp
VOLUME /tmp
# 将jar包添加到容器中并更名为app.jar
ADD bootstrap-curd-0.0.1-SNAPSHOT.jar /app.jar
# 运行jar包
RUN bash -c 'touch /app.jar'
ENTRYPOINT ["java","-jar","/app.jar"]
3、把 SpringBoot 项目用 Maven 打包成的 jar 也放入 mydockerfile 文件夹中,把 mydockerfile 文件夹上传到服务器上
4、执行制作镜像命令:
docker build -t springbootdemo4docker .
5、创建容器并进行端口映射:
docker run -d -it -p 8888:8080 --name mycurd1 springbootdemo4docker
6、然后就可以访问 web 了
不要忘了配一下服务器的安全组设置,放行访问的端口
附:图…
阿里云配置安全组
成功访问网站
查看运行的容器