目錄
Dockerfile
構(gòu)建基礎(chǔ)鏡像
基本機構(gòu)
命令:
命令解釋:
準(zhǔn)備工作
創(chuàng)建鏡像
上傳鏡像
Dockerfile
構(gòu)建基礎(chǔ)鏡像
基本機構(gòu)
命令:
命令解釋:
MAINTAINER 2196707417@qq.com
WORKDIR /test?? ?cd/test
ENY 環(huán)境變量
CPOY spring.jar /test
準(zhǔn)備工作
#1.指定基礎(chǔ)鏡像,并且必須是第一條指令
FROM centos:latest
#2.指明該鏡像的作者和其電子郵件
MAINTAINER xx "xx@qq.com"
#3.在構(gòu)建鏡像時,指定鏡像的工作目錄,之后的命令都是基于此工作目錄,如果不存在,則會創(chuàng)建目錄
WORKDIR /usr/local/java
#4.一個復(fù)制命令,把jdk安裝文件復(fù)制到鏡像中,注意:jdk*.tar.gz使用的是相對路徑
ADD jdk-8u221-linux-x64.tar.gz /usr/local/java/
#5.配置環(huán)境變量
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
#容器啟動時需要執(zhí)行的命令
#CMD ["java","-version"]
創(chuàng)建鏡像
我們可以通過jdk和jre,還有不同的操作系統(tǒng)centos和?jeanblanchard/alpine-glibc 構(gòu)建不同大小的鏡像,因為鏡像需要部署很多個,所以鏡像越小越好;下面是不同版本的鏡像大小也不同。
FROM centos
MAINTAINER 2196707417@qq.com
WORKDIR /test
COPY spring.jar /test
配置jdk環(huán)境變量
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"]
優(yōu)化鏡像
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"]
優(yōu)化操作系統(tǒng) 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"]
根據(jù)當(dāng)前路徑得Dockerfile 路徑構(gòu)建鏡像
docker build -t spring:v1 .
docker run -it spring:v1
處在哪個目錄? \test
目錄下有什么文件? spring.jar
運行鏡像
docker run -itd --name s1 -p 8080:8080 spring:v5
上傳鏡像
在阿里云搜索容器鏡像服務(wù)創(chuàng)建鏡像和倉庫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
刪除鏡像文章來源:http://www.zghlxwxcb.cn/news/detail-790712.html
docker rmi registry.cn-hangzhou.aliyuncs.com/zking_docker/order_service:v1
下載阿里云倉庫order_sercice 鏡像文章來源地址http://www.zghlxwxcb.cn/news/detail-790712.html
docker pull registry.cn-hangzhou.aliyuncs.com/zking_docker/order_service:v1
到了這里,關(guān)于進階Docker3:Dokerfile構(gòu)建鏡像的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!