当前位置: 首页 > 编程日记 > 正文

Dockerfile 入门看这篇就够了

在使用docker时,有很多像往容器中复制war包、修改容器配置之类的操作,很繁琐,配置失败或异常时就又是一遍重复的操作,这时候,就要用到这个脚本文件–Dockerfile
以下是我对Dockerfile的理解:

1、首先 Dockerfile是一个创建镜像的工具,是在你已有镜像基础上进行再建,你原有镜像的后加配置都不会再新的镜像中存在。
2、你要修改的配置和操作可以全部写在Dockerfile中,然后用Dockerfile重新建立一个镜像,这个镜像运行之后才是你想要的容器。
3、你的Dockerfile指向的那个容器的状态,等于是一个单纯的镜像启动而已,不会有任何对新镜像的干预。

接下来,拿一个我现在用的简单的Dockerfile来做例子:

# 这个from就是你指向的镜像,即在什么基础上进行功能配置添加的意思
FROM tomcat
#设置系统编码
ENV         LANG         en_US.UTF-8
# 把外面的一个war包复制进来
ADD ["./MyEmail.war","/usr/local/tomcat/webapps/MyEmail.war"]
# 指向的端口是8080,这个8080是你tomcat的端口,并不是你要建立镜像的端口
EXPOSE 8080

然后 如何运用Dockerfile构建镜像并启动呢?

# 这里,名字是你想起什么名字就起什么,脚本路径即Dockerfile的地址,这里如果是当前路径,直接.就行了
#这里,docker默认就会去找Dockerfile,这个名字你不用管,路径上也不用写
docker build -t  [名字] 脚本路径
#这里就是要将你刚刚build的新镜像启动了,这里的容器id可以用 docker images 来查看 这里的tomcat2也是你想起什么名字就起什么名字。
docker run -d --name tomcat2 -p 8081:8080 [容器id]

然后这个容器就和你最上面from指向的容器是一样可以进去操作的,如果你以前是8080端口在网页端访问的,现在就改成8081即可
以上!欢迎留言分享。

相关文章:

【DSP开发】C6000非多核非KeyStone系列DSP中断系统

C6000系列DSP的中断系统 上一篇介绍了C6455的GPIO系统,最后把GPIO4配置成了中断/事件模式,本文将介绍C6455的中断系统,介绍完基本概念后,给出把GPIO4映射到INT4的代码。 完成了GPIO和中断的配置,我们就可以开始着手DSP…

SVN用法大全,SVN除了update、commit还有什么

svn除了大家都知道的update、commit以外还有什么常用功能呢? 点击TortoiseSVN后,出现了右图的列表,这其中有哪些是常用的功能呢?最近在家办公,有些东西要svn操作,就了解了下。 咱们从上面开始 1、Show log…

递归删除目录下的所有文件

import java.io.File; public class DeleteDirectory { /** * 删除空目录 * param dir 将要删除的目录路径 */ private static void doDeleteEmptyDir(String dir) { boolean success (new File(dir)).delete(); if (success) { System.out.println("Successfully delete…

Web项目使用nginx实现代理端口访问,看这篇就够了

在搭建服务器的时候,项目部署在tomcat上,要访问项目,则需要加上端口号,如何隐藏端口号来访问呢,这就用到了nginx. nginx可以在docker上安装,也可以在linux上安装,这里我建议使用linux&#xff0…

java.lang.Thread使用及总结

1 public class mainThread{2 public static void main(String args[]){3 //第一种方式启动线程4 otherThread otnew otherThread();5 Thread tnew Thread(ot);6 t.start();7 8 //第二种方式启动线程9 itemThread…

linux/docker个人服务器项目中文变问号??,时间差8小时问题解决方法,最新,最有效

前段时间在腾讯云上面买了一台个人服务器,在搭建好web项目的时候,在项目中录入中文,全部变成了问号,时间也错了,百思不得其解,后来我尝试着修改docker编码,修改系统语言,都无法改变。后来我把项…

Android手机指令操作释疑

有人问我一个关于Android手机root与否的问题,她说明明iTools显示已取得root权限,但她就是没法在该手机上运行需要root权限的App如钛备份等等.我告诉她最好的确认方式便是以adb指令进到 /data/data路径之下,再执行 ls –al,若能顺利得到执行结果,而不会提示”Permission denied”…

伍六七带你学算法 入门篇-矩形重叠

力扣解题-----每日一题-836 矩形以列表 [x1, y1, x2, y2] 的形式表示,其中 (x1, y1) 为左下角的坐标,(x2, y2) 是右上角的坐标。 如果相交的面积为正,则称两矩形重叠。需要明确的是,只在角或边接触的两个矩形不构成重叠。 给出…

[摘录]代码优化规则

<<代码优化&#xff1a;有效使用内存>>代码优化建议&#xff1a; 1. 展开读取内存的循环 2. 消除数据相关性 如果请求的RAM单元存在地址数据相关性&#xff08;也就是说&#xff0c;一个单元含有另一个单元的地址&#xff09;&#xff0c;那么CPU不能…

伍六七带你学算法 入门篇-拼写单词

力扣解题&#xff0c;每日一题 1160. 拼写单词 难度- 简单 给你一份『词汇表』&#xff08;字符串数组&#xff09; words 和一张『字母表』&#xff08;字符串&#xff09; chars。 假如你可以用 chars 中的『字母』&#xff08;字符&#xff09;拼写出 words 中的某个『单…

linux内核调优参考

对于新部署的机器&#xff0c;需要做一些基本的调优操作&#xff0c;以更改一些默认配置带来的性能问题 1 修改打开文件数 rootmysql:/data/tools/db# vim /etc/security/limits.conf * soft nofile 65535 * soft nproc 65535…

伍六七带你学算法 入门篇-最长回文串

力扣解题&#xff0c;每日一题&#xff1a;409. 最长回文串 难度- 简单 给定一个包含大写字母和小写字母的字符串&#xff0c;找到通过这些字母构造成的最长的回文串。 在构造过程中&#xff0c;请注意区分大小写。比如 “Aa” 不能当做一个回文字符串。 注意: 假设字符串…

bzoj1095: [ZJOI2007]Hide 捉迷藏 线段树维护括号序列 点分治 链分治

这题真是十分难写啊 不管是点分治还是括号序列都有一堆细节。。 点分治&#xff1a;时空复杂度$O(n\log^2n)$&#xff0c;常数巨大 主要就是3个堆的初始状态 C堆&#xff1a;每个节点一个&#xff0c;为子树中的点到它父亲的距离的堆。 B堆&#xff1a;每个节点一个&#xff0c…

伍六七带你学算法 入门篇-最小的k个数

java面试题-最小的k个数 难度-简单 输入整数数组 arr &#xff0c;找出其中最小的 k 个数。例如&#xff0c;输入4、5、1、6、2、7、3、8这8个数字&#xff0c;则最小的4个数字是1、2、3、4。 示例 1&#xff1a; 输入&#xff1a;arr [3,2,1], k 2 输出&#xff1a;[1,2] …

伍六七带你学算法 进阶篇-三数之和

三数之和 难度-中等 题目&#xff1a;给你一个包含 n 个整数的数组 nums&#xff0c;判断 nums 中是否存在三个元素 a&#xff0c;b&#xff0c;c &#xff0c;使得 a b c 0 &#xff1f;请你找出所有满足条件且不重复的三元组。 注意&#xff1a;答案中不可以包含重复的三…

伍六七带你学算法 入门篇-链表的中间节点

力扣-876链表的中间节点 难度-简单 给定一个带有头结点 head 的非空单链表&#xff0c;返回链表的中间结点。 如果有两个中间结点&#xff0c;则返回第二个中间结点。 示例 1&#xff1a; 输入&#xff1a;[1,2,3,4,5] 输出&#xff1a;此列表中的结点 3 (序列化形式&#xf…

伍六七带你学算法 入门篇-卡牌分组

力扣-914. 卡牌分组 难度-简单 这是一道非常有趣的题&#xff0c;提交通过率令人深思 &#xff0c;思考它是不是一道简单的题… 开始正题&#xff1a; 给定一副牌&#xff0c;每张牌上都写着一个整数。 此时&#xff0c;你需要选定一个数字 X&#xff0c;使我们可以将整副牌…

伍六七带你学算法 进阶篇-排序算法

给定一个整数数组 nums&#xff0c;将该数组升序排列。 示例 1&#xff1a; 输入&#xff1a;[5,2,3,1] 输出&#xff1a;[1,2,3,5] 示例 2&#xff1a; 输入&#xff1a;[5,1,1,2,0,0] 输出&#xff1a;[0,0,1,1,2,5] 各排序算法解法如下&#xff1a; (如想要了解算法排序原理…

伍六七带你学算法 进阶篇-生命游戏

有趣的算法题–生命游戏 难度-中等 根据 百度百科 &#xff0c;生命游戏&#xff0c;简称为生命&#xff0c;是英国数学家约翰何顿康威在 1970 年发明的细胞自动机。 想要体验生命游戏的小伙伴可以到这里——>生命游戏 进入正题&#xff1a; 给定一个包含 m n 个格子的…

Linux下docker安装配置oracle,oracle创建用户并远程连接,实测可用!

最近在给同学弄毕业设计的数据库&#xff0c;因为oracle在个人电脑上极不稳定&#xff0c;所以他的电脑数据库崩溃了&#xff0c;这时候我就在docker上为他拉了一个oracle&#xff0c;解决了问题。 docker的安装共有以下几步&#xff0c;实测没问题&#xff0c;直接搬去永久可以…

plsql配置多数据源,想换哪个换哪个

现在的公司内部普遍使用plsql对数据库进行管理。而数据库非常多&#xff0c;从测试到线上环境数据库那么多&#xff0c;我们通常使用同一配置管理&#xff0c;便于切换。那么配置数据库连接就成为了很重要的一步。 1、安装plsql &#xff08;这里大家去下载安装一下&#xff0…

常见的几种网络抓包及协议分析工具

网络工程师必备技能-抓取网络数据。在本篇博客中,我们将集中记下几个问题进行探讨:Wireshark 是免费的抓取数据包、分析数据包的工具,兼容 Windows、Linux、Mac等主流平台。使用 wireshark 抓包需要的工具是:安装了 wireshark 的 PC。wireshark 抓包的范围是:抓取安装了 wireshark 的 PC 本机的网卡上流经的数据包。其中,网卡指的是 PC 上网使用的模块,常见的包括:以太网网卡、wifi 无线网卡,PC 分别使用它们用于连接以太网、wifi 无线网络。

一文搞懂网络OSI网络模型

在互联网技术里,有两件事最为重要,一个是TCP/IP协议,它是万物互联的事实标准;另一个是Linux操作系统,它是推动互联网技术走向繁荣的基石。在网络编程中最重要的模型便是OSI七层网络模型和TCP/IP四层网络模型七层模型,也称为OSI(Open System Interconnection)参考模型,是国际标准化(ISO)指定的一个用于计算机或通信系统间互联的标准体系。建立七层模型的主要目的是为解决各种网络互联时遇到的兼容性问题。

简单两步,spring aop上手即用即会

面向切面思想在于它的干净&#xff0c;对逻辑代码没有任何侵入性&#xff0c;只需要在想要切入的方法或者类之上加上自定义的注解即可。 首先&#xff0c;就是自定义一个注解&#xff1a; //这里我们定义一个名为 MyPointer 的注解 Documented Retention(RetentionPolicy.RUNTI…

手动将jar包导入pom依赖,让jar包适配本地maven项目

前言&#xff1a; Oracle对maven很久没有更新依赖&#xff0c;虽然19年更新了一版&#xff0c;但pom引入一直有错误。 我用的是oralce 12的依赖&#xff0c;虽然有jar包&#xff0c;但是依赖和pom没有适配&#xff0c;项目打包的时候还要去中央仓库去下载&#xff0c;而中央仓库…

浏览器兼容video视频播放的多种方法&视频在浏览器播放格式,视频浏览器播放格式演示

对于老版本的IE可以通过HTML5shiv来使不支持HTML5的浏览器支持HTML新标签video和audio标签。主要解决HTML5提出的新的元素不被IE6/IE7/IE8识别,这些新元素不能作为父节点包裹子元素,且不能应用CSS样式。让CSS 样式应用在未知元素只需执行 document.createElement(elementName) 即可实现。html5shiv的工作原理也就是基于此。

Linux通过端口号杀死指定进程

前言&#xff1a; 我们在服务器上升级项目的时候&#xff0c;需要将原来的项目停止&#xff0c;然后启动新的项目。 这时候我们只知道应用所占的端口号&#xff0c;如何将进程杀死呢&#xff1f; linux中杀进程时候&#xff0c;如果你是知道它所占用的端口号的话&#xff0c;可…

Linux/docker下oracle开启监听,开启自动启动

写在前头&#xff1a; 之前呢&#xff0c;使用docker安装了oracle&#xff0c;但它默认是会关闭的。使用了几天以后突然连接异常了&#xff0c;报的问题是oracle监听有问题了&#xff0c;我知道了是oracle服务自动关闭了&#xff0c;监听也跟着关了。所以我找了一些文章&#x…

手把手教你JavaEE的分页查询、分页展示,有了这个,你的项目又多了一个谈资

前言&#xff1a; 我们在写项目的时候&#xff0c;往往有一些项目的信息展示。而展示的数据量往往是很大的&#xff0c;这时候&#xff0c;加入一个分页的功能往往是最理想的选择。 先简单描述一下功能&#xff1a; 根据你的数据量和指定的页面展示数据条数&#xff0c;进行查…

一分钟带你了解什么是“复杂度” 算法上的O(1)、O(n)、O(logn) 这些都是什么❓❓

前言&#xff1a;在最开始学习编程的时候&#xff0c;打开数据结构的书&#xff0c;最显眼的就是排序算法&#xff0c;什么堆排序、希尔排序&#xff0c;然后旁边写着最坏复杂度、最优复杂度、平均复杂度&#xff0c;是一些O(n)、O(logn)、O(n)。这时候我脑子想起一首歌——大朋…