【Docker篇】自定义Dockerfile的操作

文章目录

🍔镜像结构

镜像是将应用程序及其需要的系统函数库、环境、配置、依赖打包而成。

我们以MySQL为例,来看看镜像的组成结构:

简单来说,镜像就是在系统函数库、运行环境基础上,添加应用程序文件、配置文件、依赖文件等组合,然后编写好启动脚本打包在一起形成的文件。

我们要构建镜像,其实就是实现上述打包的过程。

🛸什么是Dockerfile

Dockerfile是用于构建Docker镜像的文本文件。它包含了一系列指令和参数,描述了如何构建一个容器镜像。通过编写Dockerfile,可以自动化地构建和部署Docker容器,以及规范化不同环境下的应用程序部署。Dockerfile中的指令可以包括从基础镜像中构建、安装软件包、复制文件、设置环境变量等操作,最终生成一个完整的可运行的Docker镜像。

⭐基于Ubuntu镜像构建一个新镜像,运行一个java项目

首先进入文件夹tmp,创建文件夹docker-demo

然后我们把网盘里面的文件传到docker-demo文件夹里面

我用夸克网盘分享了「docker部署java项目的文件」,点击链接即可保存

链接:https://pan.quark.cn/s/d2115447bdab


查看一下dockerfile文件内容

下面我们使用dockerfile来构建镜像

bash 复制代码
docker build -t javaweb:1.0 .

查看镜像,出现了我们刚刚创建的镜像

我们来启动一下

我们去页面访问一下

成功了

但是我们发现上面的构建步骤优点麻烦

我们可以使用下面的简便操作

🔎使用 java:8-alpine

我们修改上面提到的dockerfile文件内容,修改如下

修改完后,在重新上传文件一次

然后重新构建一次

发现只剩了5步,比之前少了许多

在技术的道路上,我们不断探索、不断前行,不断面对挑战、不断突破自我。科技的发展改变着世界,而我们作为技术人员,也在这个过程中书写着自己的篇章。让我们携手并进,共同努力,开创美好的未来!愿我们在科技的征途上不断奋进,创造出更加美好、更加智能的明天!

相关推荐
一个网络学徒7 分钟前
MGRE综合实验
运维·服务器·网络
C++ 老炮儿的技术栈16 分钟前
在 Scintilla 中为 Squirrel 语言设置语法解析器的方法
linux·运维·c++·git·ubuntu·github·visual studio
ldj202033 分钟前
Docker的docker-compose类比Spring的ApplicationContext
spring·docker
白鹭1 小时前
基于LNMP架构的分布式个人博客搭建
linux·运维·服务器·网络·分布式·apache
ldj20201 小时前
docker 自定义网桥作用
docker·容器
java叶新东老师1 小时前
k8s常用命令
云原生·容器·kubernetes
java叶新东老师1 小时前
linux 部署 flink 1.15.1 并提交作业
linux·运维·flink
程序员JerrySUN2 小时前
Linux系统架构核心全景详解
linux·运维·系统架构
无敌的牛2 小时前
Linux文件理解,基础IO理解
linux·运维·服务器
angushine2 小时前
鲲鹏服务器logstash采集nginx日志
运维·服务器·nginx