36.Docker-Dockerfile自定义镜像

devtools/2024/9/23 10:25:04/

镜像结构

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

镜像是分层机构,每一层都是一个layer

BaseImage层:包含基本的系统函数库、环境变量、文件系统

EntryPoint:入口,是镜像中应用启动的命令

其他:在BaseImage基础上添加依赖、安装程序、完成整个应用的安装和配置。

Dockerfile是一个文本文件,其中包含一个个指令Instruction,指令说明要执行什么操作。每一个指令会形成一层Layer。

 其他命令参考网址:https://docs.docker.com/engine/reference/builder

案例:基于ubuntu镜像构建一个新镜像,运行一个java项目

构建镜像命令:

docker build -t userservice:1.0 .

. 表示Dockerfile文件所在目录

创建并启动容器命令: 

docker run --name user-service -p 18080:8080 -d userservice:1.0

将springboot项目的配置文件写入到启动命令中:

把jar包文件和配置文件都挂载到宿主机目录便于修改:

docker run --name springbootdemo -p 18085:8085 -v /home/project/config/application.yml:/application.yml -v /home/project/spring-boot-demo.jar:/tmp/springbootdemo.jar -d sprinbootdemo:1.0


http://www.ppmy.cn/devtools/39672.html

相关文章

PHP数值数组讲解,for循环及函数 遍历数组获取元素

源码 <?phpheader("Content-Type:text/html;Charsetutf8");//创建数值数组$arr1 array();//简化创建语法 $arr2 [];//通过索引为数组添加不同类型的元素$arr1[0] "zhangsan" ;//也可以乱序添加元素$arr1[2] 12 ;$arr1[1] true ; //true输出为1 f…

学生党性价比蓝牙耳机哪款好用?五款性价比机型盘点分享

在众多的蓝牙耳机里&#xff0c;对于许多预算不到的学生党来说&#xff0c;想要在有限的预算内挑选到一款性价比高、性能出色的蓝牙耳机&#xff0c;确实是一个不小的挑战&#xff0c;作为蓝牙耳机大户的我今天就来为大家盘点五款性价比极高的蓝牙耳机&#xff0c;帮助大家在有…

第九届“数维杯”大学生数学建模挑战赛(C题)深度剖析|建模完整过程+详细思路+代码全解析

问题1 问题1的建模过程如下&#xff1a; 设勘探区域为 D D D&#xff0c;勘探井位数量为 n n n&#xff0c;每个勘探井位的坐标为 ( x i , y i ) , i 1 , 2 , . . . , n (x_i,y_i),i1,2,...,n (xi​,yi​),i1,2,...,n。根据勘探数据&#xff0c;假设该区域内天然气水合物资源…

Vulstack红队评估(一)

文章目录 一、环境搭建1、网络拓扑2、web服务器(win7)配置3、域控&#xff08;winserver2008&#xff09;配置4、域内机器&#xff08;windows 2003&#xff09;配置5、调试网络是否通常 二、web渗透1、信息搜集2、端口扫描3、目录扫描4、弱口令5、phpmyadmin getshell日志gets…

Redis与Mysql双写一致性如何保证

前言 之前我就在面试被问到Redis与MySQL双写一致性如何保证&#xff1f;当时没答出来,回去做了复盘。下面这些引用了网络上给出的方案&#xff0c;加上了我自己的理解&#xff0c;希望对大家有帮助。 这道题其实就是在问缓存和数据库在双写场景下&#xff0c;一致性是如何保证…

仿照JDK源码写一个ArrayList实现

仿照JDK编写一个简化的ArrayList实现是一个很好的学习Java集合框架内部工作原理的方式。以下是一个简化版的ArrayList实现,它包含了基本的添加、获取、删除和大小检查功能。 public class MyArrayList<E> {private static final int DEFAULT_CAPACITY = 10;private Obj…

Android 实时监听Activity堆栈变化(系统应用)

private val mIActivityManager: IActivityManager ActivityManagerNative.asInterface(ServiceManager.getService(Context.ACTIVITY_SERVICE)) 方式一&#xff08;registerProcessObserver&#xff09; &#xff1a; mIActivityManager.registerProcessObserver(mIProcess…

git error index file corrupt

错误提示&#xff1a; error: bad signature 0x00000000 fatal: index file corrupt 场景复现&#xff1a;在使用git add .提交代码到缓冲区时电脑宕机&#xff0c;重启后再次提交代码会出现该提示 原因分析&#xff1a;.git目录下的index文件损坏 解决方式&#xff1a; 删…