目录
Dockerfile
构建基础镜像
基本机构
命令:
命令解释:
准备工作
创建镜像
上传镜像
Dockerfile
构建基础镜像
基本机构
命令:
命令解释:
MAINTAINER 2196707417@qq.com
WORKDIR /test cd/test
ENY 环境变量
CPOY spring.jar /test
准备工作
#1.指定基础镜像,并且必须是第一条指令
FROM centos:latest
#2.指明该镜像的作者和其电子邮件
MAINTAINER xx "xx@qq.com"
#3.在构建镜像时,指定镜像的工作目录,之后的命令都是基于此工作目录,如果不存在,则会创建目录
WORKDIR /usr/local/java
#4.一个复制命令,把jdk安装文件复制到镜像中,注意:jdk*.tar.gz使用的是相对路径
ADD jdk-8u221-linux-x64.tar.gz /usr/local/java/
#5.配置环境变量
ENV JAVA_HOME=/usr/local/java/jdk1.8.0_221
ENV CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV PATH=$JAVA_HOME/bin:$PATH
#容器启动时需要执行的命令
#CMD ["java","-version"]
创建镜像
我们可以通过jdk和jre,还有不同的操作系统centos和 jeanblanchard/alpine-glibc 构建不同大小的镜像,因为镜像需要部署很多个,所以镜像越小越好;下面是不同版本的镜像大小也不同。
FROM centos
MAINTAINER 2196707417@qq.com
WORKDIR /test
COPY spring.jar /test
配置jdk环境变量
FROM centos
MAINTAINER 2196707417@qq.com
WORKDIR /test
COPY spring.jar /test/
ADD jdk-8u221-linux-x64.tar.gz /test
ENV JAVA_HOME=/test/jdk1.8.0_221
ENV CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV PATH=$JAVA_HOME/bin:$PATH
配置自动运行jar包 #CMD ["java","-version"]
FROM centos
MAINTAINER 2196707417@qq.com
WORKDIR /test
COPY spring.jar /test/
ADD jdk-8u221-linux-x64.tar.gz /test
ENV JAVA_HOME=/test/jdk1.8.0_221
ENV CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV PATH=$JAVA_HOME/bin:$PATH
#CMD ["java","-version"]
优化镜像
jdk jre
FROM centos
MAINTAINER 2196707417@qq.com
WORKDIR /test
COPY spring.jar /test/
ADD jre-8u391-linux-x64.tar.gz /test
ENV JAVA_HOME=/test/jre1.8.0_391
ENV CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV PATH=$JAVA_HOME/bin:$PATH
#CMD ["java","-version"]
优化操作系统 centos换jeanblanchard/alpine-glibc
FROM jeanblanchard/alpine-glibc
MAINTAINER 2196707417@qq.com
WORKDIR /test
COPY spring.jar /test/
ADD jre-8u391-linux-x64.tar.gz /test
ENV JAVA_HOME=/test/jre1.8.0_391
ENV CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV PATH=$JAVA_HOME/bin:$PATH
#CMD ["java","-version"]
根据当前路径得Dockerfile 路径构建镜像
docker build -t spring:v1 .
docker run -it spring:v1
处在哪个目录? \test
目录下有什么文件? spring.jar
运行镜像
docker run -itd --name s1 -p 8080:8080 spring:v5
上传镜像
在阿里云搜索容器镜像服务创建镜像和仓库order_service
控制台登录
给镜像取个别名
docker tag 52c4827a87e1 registry.cn-hangzhou.aliyuncs.com/zking_docker/order_service:v1
上传镜像到阿里云order_service仓库
docker push registry.cn-hangzhou.aliyuncs.com/zking_docker/order_service:v1
删除镜像文章来源:https://www.toymoban.com/news/detail-790712.html
docker rmi registry.cn-hangzhou.aliyuncs.com/zking_docker/order_service:v1
下载阿里云仓库order_sercice 镜像文章来源地址https://www.toymoban.com/news/detail-790712.html
docker pull registry.cn-hangzhou.aliyuncs.com/zking_docker/order_service:v1
到了这里,关于进阶Docker3:Dokerfile构建镜像的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!