Edehuag

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

Docker之dockerfile

DockerFile

Dockerfile 是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。

创建Dockerfile文件

vi Dockerfile
具体内容如下:

FROM openjdk:8-jdk-alpine
VOLUME /tmp
ADD learn-docker-storage-1.0-SNAPSHOT.jar app.jar
EXPOSE  8003
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

命令解释:
FORM:定制的镜像都是基于 FROM 的镜像,这里的 openjdk 就是定制需要的基础镜像,后续操作都是基于openjdk
VOLUME:挂载一个数据卷,这里因为没有名称,所以是一个默认的数据卷(后面详细解释)
ADD:添加一层镜像到当前镜像,这里就是添加SpringBootTest镜像到当前层,并改名app.jar
EXPOSE:暴漏端口,因为我们的自己的端口是8003,所以我们暴漏8003
ENTRYPOINT:设定容器启动时第一个运行的命令及其参数,这里就是容器以启动就执行 java -jar /app.jar

打包镜像

写好DockerFile后就需要用docker build命令来构建我们的镜像了,这样就可以将我们的微服务打包成一个镜像了

构建命令格式

构建一个镜像需要使用以下命令

docker bulid -t 仓库名/镜像名:tag .
实例:
docker build -t learn-docker-storage:0.0.1 .

参数解释
-t: 镜像的名字及标签,一般命名规则是 仓库名/镜像名:tag,
仓库名:一般是私服或者dockerhub等地址,如果忽略默认就是dockerhub的地址docker.io/library/
镜像名称:就是我们的自己的服务名称,可以随意命名
tag:就是我们的版本号
.:这个 . 表示当前目录,这实际上是在指定上下文的目录,只有.的话是指当前目录
docker build命令会将该目录下的内容打包交给Docker引擎以帮助构建镜像。

posted on   饿得慌~  阅读(14)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示