Docker制作SpringBoot镜像

  • Dcokerfile目录

在这里插入图片描述

编写Dockerfile

FROM openjdk:8
#发布到网上时只会把jar包和Dockerfile发布上去RUN mkdir -p /opt/javaCOPY app.jar /opt/java/app.jar
#地址映射
#CMD ["--server.port=8080"]
#对外暴露端口(可以任意修改)
EXPOSE 15009
#执行命令
#ENTRYPOINT ["java","-jar","/app.jar"]ENV APP_VERSION 11.1#CMD的写法容器一直报错 no such file 
#CMD ["java -jar /app.jar"]
CMD ["java","-jar","/opt/java/app.jar"]

在dockerfile中,声明了操作系统的环境变量,暴露了端口号,用CMD命令指定容器启动后的命令,这里是启动jar包。
注意: CMD 命令不要写在一个字符串中,而是要以数组的形式分开写。

  • 镜像构建
    docker build -t app:1.0 .

查看镜像
在这里插入图片描述

这些镜像名和标签名都是none的,被称为虚悬镜像,可以理解为过时镜像,当新发布的镜像名和标签与就镜像一致时,旧镜像自然就成了虚悬镜像。

  • 启动docker容器
docker run -d -P -v /opt/module/docker/java/index.conf:/opt/java/index.conf app:1.0

这里进行了随机端口映射,使用了数据卷挂载,将/opt/module/docker/java/index.conf 挂载到容器中的/opt/java/index.conf
这里说明一下文件和目录的挂载:

  1. 如果宿主机和容器内都有的文件 ,则会以宿主机的为准,如果修改宿主机或者容器内的文件,都会进行相互同步,这里要注意的一点是,容器的宿主的文件要是提前存在的。

  2. 目录的挂载, 将宿主机的某个目录与docker的某个目录进行挂载,那么这个目录下任何文件改变都会相互同步

docker run -d -P -v /opt/module/docker/java/mount/:/opt/mount/ app:1.0
此命令会将宿主机的 /opt/module/docker/java/mount/ 目录下的内容 挂载到 容器中的 /opt/mount/ 目录下,如果容器目录不存在,则会自动创建,然后把宿主机目录的内容给同步过去。这是目录对目录,有的容器目录挂载不成功,所以启动后要使用 docker ps 看一下容器是否已经起来了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/30579.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

安卓读取,添加,更新,删除联系人,读取短信

目录 读取联系人 添加联系人 更新联系人 删除联系人 读取短信 读取联系人 安卓可以通过contentResolver来读取联系人表,联系人表的Uri信息是:content://com.android.contacts/data/phones 从而输出联系人信息, 需要相关权限&#xff1a…

Pod进阶

目录 一、资源限制 1. CPU 资源单位 2.内存 资源单位 3.示例 二、重启策略 三、健康检查(探针) 1.探针的三种规则: 1.1就绪探测 2.Probe支持三种检查方法: 2.1exec检查方式 2.2httpGet方式 2.3tcpSocket方式 3. 启动、退出动作…

android—ktor-client封装使用,请求网络

ktor-client封装使用步骤: 1.导入依赖: 设置版本号: buildscript {ext.ktor_version 2.3.1 }添加依赖: implementation "io.ktor:ktor-client-okhttp:$ktor_version"implementation "io.ktor:ktor-client-auth…

嵌入式面试2

9.写出float x 与“零值”比较的if语句。 if(x > 0.000001 && x < -0.000001) 权重&#xff1a;高 备注&#xff1a;实际编程时要注意 12、已知一个数组table&#xff0c;用一个宏定义&#xff0c;求出数据的元素个数。 参考答案&#xff1a; #define NTBL (size…

Sketch打不开AI文件?转换方法在这里

1、对比设计软件 Sketch 与 AI 软件功能 Sketch 与 Illustrator 都是行业内优秀的矢量图形设计软件&#xff0c;各有千秋。Sketch 从 2010 年面世&#xff0c;专注 APP 界面设计&#xff0c;深受初学者与专业人士喜爱。Illustrator 拥有更悠久的历史&#xff0c;是处理复杂图标…

linux系统虚拟主机开启支持SourceGuardian(sg11)加密组件

注意&#xff1a;sg11我司只支持linux系统虚拟主机自主安装。支持php5.3及以上版本。 1、登陆主机控制面板&#xff0c;找到【远程文件下载】这个功能。 2、远程下载文件填写http://download.myhostadmin.net/vps/sg11_for_linux.zip 下载保存的路径填写/others/ 3、点击控制…

【iosH5开发】IOS浏览器对于Vue3 Element-plus el-input中,input.value.focus无法聚焦问题

【iosH5开发】IOS浏览器对于Vue3 Element-plus el-input中&#xff0c;input.value.focus无法聚焦问题 此次项目遇到了两个问题&#xff0c;一个是在Vue3中el-input的input.value.focus()无法触发&#xff0c;但是在PC或者安卓均可触发。 // 解决方案 // 单纯的触发input.val…

前端项目环境变量如何配置?

我们在项目开发过程中&#xff0c;至少会经历开发环境、测试环境和生产环境三个阶段。不同阶段请求的状态&#xff08;如接口地址等&#xff09;不尽相同&#xff0c;若手动切换接口地址是相当繁琐切容易出错的。于是环境变量配置的需求就应运而生&#xff0c;我们只需做简单的…

robots.txt 如何禁止蜘蛛(百度,360,搜狗,谷歌)搜索引擎获取页面内容

什么是蜘蛛抓取 搜索引擎使用spider程序自动访问互联网上的网页并获取网页信息。spider在访问一个网站时&#xff0c;会首先会检查该网站的根域下是否有一个叫做robots.txt的纯文本文件。您可以在您的网站中创建一个纯文本文件robots.txt&#xff0c;在文件中声明该网站中不想…

Window下安装MinGW64

欢迎来到我的酒馆 介绍Windows下&#xff0c;安装MinGW64。 目录 欢迎来到我的酒馆二.MinGW64三.配置系统环境变量 二.MinGW64 从sourceforge下载mingw64&#xff0c; sourceforge下载MinGW https://sourceforge.net/projects/mingw-w64/files/mingw-w64/mingw-w64-release/ 下…

在家查阅下载AACR(美国癌症研究学会)数据库文献

AACR&#xff08;美国癌症研究学会&#xff09;简介&#xff1a; 美国癌症研究学会American Association for Cancer Research创建于1907年&#xff0c;是世界上成立最早、规模最大的致力于全面、创新和高水准癌症研究的科学组织。其出版物包括7种正式出版的期刊&#xff1a; …

题解 | #C.idol!!# 2023牛客暑期多校6

C.idol!! 数学 题目大意 正整数 n n n 的双阶乘 n ! ! n!! n!! 表示不超过 n n n 且与 n n n 有相同奇偶性的所有正整数乘积 求对于给定 n n n &#xff0c; ∏ i 1 n i ! ! \prod\limits_{i1}^n i!! i1∏n​i!! 的后缀 0 0 0 个数 解题思路 根据双阶乘的性质&…

基于机器学习的库存需求预测 -- 机器学习项目基础篇(12)

在本文中&#xff0c;我们将尝试实现一个机器学习模型&#xff0c;该模型可以预测在不同商店销售的不同产品的库存量。 导入库和数据集 Python库使我们可以轻松地处理数据&#xff0c;并通过一行代码执行典型和复杂的任务。 Pandas -此库有助于以2D阵列格式加载数据帧&#…

vue 全局状态管理(简单的store模式、使用Pinia)

目录 为什么使用状态管理简单的store模式服务器渲染&#xff08;SSR&#xff09; pinia简介示例1. 定义一个index.ts文件2. 在main.ts中引入3. 定义4. 使用 为什么使用状态管理 多个组件可能会依赖同一个状态时&#xff0c;我们有必要抽取出组件内的共同状态集中统一管理&…

马来西亚的区块链和NFT市场调研

马来西亚的区块链和NFT市场调研 基本介绍 参考&#xff1a; https://zh.wikipedia.org/wiki/%E9%A9%AC%E6%9D%A5%E8%A5%BF%E4%BA%9A zz制度&#xff1a;联邦议会制 语言文字&#xff1a; 马来语 民族&#xff1a; 69.4%原住民&#xff08;土著&#xff09;&#xff0c;23.2%…

排序(快速排序,归并排序,插入排序,选择排序,冒泡排序,希尔排序,堆排序)

给定你一个长度为 n 的整数数列。 请你对这个数列按照从小到大进行排序。 并将排好序的数列按顺序输出。 输入格式 输入共两行&#xff0c;第一行包含整数 n 。 第二行包含 n 个整数&#xff08;所有整数均在 1∼109 范围内&#xff09;&#xff0c;表示整个数列。 输…

Golang中的defer

面试常问之defer()的执行次序 情形1 package mainfunc main() { defer print(123) defer_call() defer print(789) //panic之后的代码不会被执行 print("不会执行到这里")}func defer_call() { defer func() { print("打印前") }() defer func() { pr…

Opencv-C++笔记 (14) : 霍夫变换(直线、圆)

文章目录 一、霍夫变换-直线1.1霍夫变换-直线 原理详解 二、霍夫圆检测 一、霍夫变换-直线 Hough Line Transform用来做直线检测 前提条件 – 边缘检测已经完成 1、平面空间&#xff08;x,y&#xff09;到极坐标空间转换&#xff1b; 2、对极坐标进行变换&#xff0c;转化为…

[mongo]应用场景及选型

应用场景及选型 MongoDB 数据库定位 OLTP 数据库横向扩展能力&#xff0c;数据量或并发量增加时候架构可以自动扩展灵活模型&#xff0c;适合迭代开发&#xff0c;数据模型多变场景JSON 数据结构&#xff0c;适合微服务/REST API基于功能选择 MongoDB 关系型数据库迁移 从基…

【Android】MVC,MVP,MVVM三种架构模式的区别

MVC 传统的代码架构模式&#xff0c;仅仅是对代码进行了分层&#xff0c;其中的C代表Controller&#xff0c;控制的意思 将代码划分为数据层&#xff0c;视图层&#xff0c;控制层&#xff0c;三层之间可以任意交互 MVP MVP是在MVC基础上改进而来的一种架构&#xff0c;其中的…