当前位置: 首页 > news >正文

dockerfile文件书写

1.dockerfile构建nginx镜像

1.1书写dockerfile文件

mkdir nginx  #创建nginx目录
cd nginx
vim dockerfile # 修改文件FROM centos  # 基础镜像,默认最新的centos8操作系统
MAINTAINER xianchao # 指定镜像的作者信息
RUN rm -rf /etc/yum.repos.d/* # centos8默认的yum源不可以使用,需要更换yum源
COPY Centos-vault-8.5.2111.repo /etc/yum.repos.d/ # 将nginx目录下的文件拷贝到镜像中
RUN yum install wget -y # 下载wget命令
RUN yum install nginx -y # 下载nginx服务
COPY index.html /usr/share/nginx/html/ # 将nginx目录下的文件拷贝到镜像中
EXPOSE 80 # 暴露端口
ENTRYPOINT ["/usr/sbin/nginx","-g","daemon off;"] # 执行命令,开启nginx服务

1.2准备nginx目录下的文件

  1. 准备yum源
  2. 准备index.html文件
vim index.html<html>
<head>
<title>page added to dockerfile</title>
</head>
<body>
<h1>Hello ,My Name is tiandameng </h1>
</body>
</html>

1.3开始制作镜像

docker build -t dameng/nginx:v1 . --load

在这里插入图片描述

1.4查看镜像

docker images | grep nginx

在这里插入图片描述

1.5运行镜像

docker  run -d --name nginx -p 80  dameng/nginx:v1

在这里插入图片描述

2.dockerfile构建tomcat镜像

2.1书写dockerfile文件

运行tomcat需要jdk环境

mkdir tomcat  #创建tomcat目录
cd tomcat
vim dockerfile # 修改文件FROM centos    # 基础镜像,默认最新的centos8操作系统
MAINTAINER tian   # 指定镜像的作者信息
RUN rm -rf  /etc/yum.repos.d/*    # centos8默认的yum源不可以使用,需要更换yum源
COPY Centos-vault-8.5.2111.repo /etc/yum.repos.d/    # 将tomcat目录下的文件拷贝到镜像中
RUN yum -y install wget     # 下载wget命令
ADD  apache-tomcat-8.0.26.tar.gz  /usr/local    # 将tomcat压缩包解压到/usr/local目录下
ADD  jdk-8u45-linux-x64.rpm  /usr/local     # 将jdk的rpm包放到镜像中的/usr/local中
RUN  cd /usr/local && rpm -ivh jdk-8u45-linux-x64.rpm     # 进入到/usr/local目录下,运行jdk的rpm包
RUN mv /usr/local/apache-tomcat-8.0.26   /usr/local/tomcat     # 修改tomcat的名称
ENTRYPOINT /usr/local/tomcat/bin/startup.sh && tail -F /usr/local/tomcat/logs/catalina.out     # 运行tomcat服务
EXPOSE 8080    #暴露8080端口

2.2准备tomcat目录下的文件

  1. 准备tomcat的tar包
  2. 准备jdk的rpm包
  3. 准备yum源

2.3开始制作镜像

docker  build -t dameng/tomcat:v1 . --load

在这里插入图片描述

2.4查看镜像

docker images | grep tomcat

在这里插入图片描述

2.5运行镜像

docker run -d -p 8080 --name tomcat dameng/tomcat:v1

在这里插入图片描述

相关文章:

dockerfile文件书写

1.dockerfile构建nginx镜像 1.1书写dockerfile文件 mkdir nginx #创建nginx目录 cd nginx vim dockerfile # 修改文件FROM centos # 基础镜像&#xff0c;默认最新的centos8操作系统 MAINTAINER xianchao # 指定镜像的作者信息 RUN rm -rf /etc/yum.repos.d/* # centos8默认…...

蓝桥杯-整数删除

给定一个长度为 N 的整数数列&#xff1a;A1, A2, ... , AN。你要重复以下操作 K 次&#xff1a; 每次选择数列中最小的整数&#xff08;如果最小值不止一个&#xff0c;选择最靠前的&#xff09;&#xff0c;将其删除。 并把与它相邻的整数加上被删除的数值。 输出 K 次操作后…...

以程序员的视角,看前后端分离的是否必要?

Hello&#xff0c;我是贝格前端工场&#xff0c;本篇分享一个老生常谈的话题&#xff0c;前后端分离是必然趋势&#xff0c;但也是要区分具体的场景&#xff0c;欢迎探讨&#xff0c;关注&#xff0c;有前端开发需求可以私信我&#xff0c;上车了。 一、什么是前后端分离和不分…...

Linux:sed进阶(12)

Linux&#xff1a;shell脚本&#xff1a;基础使用&#xff08;5&#xff09;《正则表达式-sed工具》_linux脚本表达式s-CSDN博客https://blog.csdn.net/w14768855/article/details/132347574?ops_request_misc%257B%2522request%255Fid%2522%253A%252217084222871680019707523…...

Linux命令-builtin命令(执行bash内建命令)

说明 用于执行指定的bash内建命令。builtin 命令调用的bash内建命令优先于同名的外部命令及同名的shell函数。 语法 builtin [shell-builtin [arg ...]]参数 shell-builtin&#xff08;可选&#xff09;&#xff1a;要调用的bash内建命令。 arg&#xff08;可选&#xff09…...

HTML的特殊字符

HTML的特殊字符 有些特殊的字符在 html 文件中是不能直接表示的&#xff0c;例如: 空格&#xff0c;小于号(<)&#xff0c;大于号(>)&#xff0c;按位与(&)。 空格 示例代码&#xff1a; 运行结果&#xff1a; 由于html 标签就是用 < > 表示的&#xff0…...

内核移植学习

内核移植 内核移植就是指将RT-Thread内核在不同的芯片架构、不同的板卡上运行起来。 移植可分为CPU架构移植和BSP板级支持包移植两部分。 CPU架构移植 在嵌入式领域有多种不同CPU架构&#xff0c;例如Cortex-M、ARM920T、MIPS32、RISC-V等等。 为了使RT-Thread能够在不同C…...

Mysql 两个日期相减得到指定的格式数据

首先避坑&#xff1a; Mysql 中两个日期直接相减&#xff0c;若在同一天则得到的是秒&#xff0c;否则相减得到的并不是秒&#xff0c;一定要注意。 函数 TIMESTAMPDIFF(unit,begin,end); 函数返回 begin - end 的结果。 其中 begin 和 end 是 DATE 或 DATETIME 表达式。 …...

第六十四天 服务攻防-框架安全CVE复现Apache shiroApache Solr

第六十四天 服务攻防-框架安全&CVE复现Apache shiro&Apache Solr 知识点: 中间件及框架列表: IIS,Apache,Nginx,Tomcat,Docker,K8s,Weblogic.JBoos,WebSphere, Jenkins,GlassFish,Jetty,Jira,Struts2,Laravel,Solr,Shiro,Thinkphp,Spring, Flask,jQuery等 1、开发框…...

JavaScript 设计模式之享元模式

享元 将一部分共用的方法提取出来作为公用的模块 const Car {getName: function () {return this.name},getPrice: function (price) {return price * 30} }const BMW function (name, price) {this.name namethis.price price } BMW.prototype Car const bmw new BMW(…...

利用故事推动企业变革:如何提升数据分析技能

单一的数据和表格尽管有算法的支撑&#xff0c;但在其表达方式上总会让人感到头疼。当我们需要深入了解企业的盈利能力&#xff0c;或是尝试评估业务的增长机会时&#xff0c;以往都会将精力全部放在分析数字、阅读信息、回顾历史和沟通交流之上&#xff0c;却忽略随之而生成的…...

Python内置函数04——enumerate

文章目录 概述语法实例展示 概述 在Python中&#xff0c;enumerate()是一个很常用的内置函数。它的作用是将一个可迭代对象&#xff08;如列表、元组、字符串等&#xff09;组合为一个索引序列和元素序列的枚举对象。 语法 enumerate(iterable, start0) 其中&#xff0c;ite…...

unity学习(28)——登录功能

有之前注册的知识&#xff0c;登录就很容易处理了。 登陆成功返回id&#xff1a; 登录失败返回null&#xff1a; 测试同一账号不能重复登陆&#xff01;登录成功后最好可以跳到新的场景中 结果是好的&#xff0c;去服务器看一下对应部分的代码&#xff0c;可见&#xff0c;登…...

Mac公证脚本-Web公证方式

公证方式 Mac 公证方式有三种 公证方法 优点 缺点 阐述 Xcode Xcode携带的图形界面&#xff0c;使用方便 无法进行自动化公证 单个App应用上架使用较多 altool&#xff08;旧版&#xff09; 支持pkg&#xff0c;dmg&#xff0c;脚本自动化 2023/11/01 将会过期 已经…...

让你专注工作的思维模板,进入每天的专注生活

开启专注生活&#xff0c;打造高效氛围&#xff0c;踏上传奇之路。 如何专注工作&#xff1f; 阻止内部干扰阻止外部干扰结论 专注象限图如下&#xff1a;&#xff08;幸福是一种不断增加难度的活动&#xff09; A1是你开始做某事的时候。 A2是当任务变得过于简单的时候。 A3是…...

Java之获取Nginx代理之后的客户端IP

Java之获取Nginx代理之后的客户端IP Nginx代理接口之后&#xff0c;后台获取的IP地址都是127.0.0.1&#xff0c;解决办法是需要配置Nginx搭配后台获取的方法&#xff0c;获得设备的真实地址。我们想要获取的就是nginx代理日志中的这个IP nginx配置 首先在nginx代理的对应lo…...

【springboot+vue项目(十五)】基于Oauth2的SSO单点登录(二)vue-element-admin框架改造整合Oauth2.0

Vue-element-admin 是一个基于 Vue.js 和 Element UI 的后台管理系统框架&#xff0c;提供了丰富的组件和功能&#xff0c;可以帮助开发者快速搭建现代化的后台管理系统。 一、基本知识 &#xff08;一&#xff09;Vue-element-admin 的主要文件和目录 vue-element-admin/ |…...

音频的传输链路与延迟优化点

麦克风->系统采集模块->APP采集模块->3A、混响等音效->混音->音频编码->RTC网络发送-> MediaServer->RTC网络接收->音频jitter buffer->音频解码->音频的后处理(均衡)->APP播放模块->x系统播放模块->扬声器/耳机。 整个链路如上&a…...

【51单片机】直流电机驱动(PWM)(江科大)

1.直流电机介绍 直流电机是一种将电能转换为机械能的装置。一般的直流电机有两个电极,当电极正接时,电机正转,当电极反接时,电机反转 直流电机主要由永磁体(定子)、线圈(转子)和换向器组成 除直流电机外,常见的电机还有步进电机、舵机、无刷电机、空心杯电机等 2.电机驱动…...

腾讯文档(excel也一样)设置单元格的自动行高列宽

1. 选中单元格 可选择任意一个或者几个 2. 设置自动 行高和列宽 即可生效...

Lean版本管理革命:3步搞定多版本Lean开发环境

Lean版本管理革命&#xff1a;3步搞定多版本Lean开发环境 【免费下载链接】elan The Lean version manager 项目地址: https://gitcode.com/gh_mirrors/el/elan 还在为不同Lean项目需要不同版本而头疼吗&#xff1f;还在手动下载、配置、切换Lean版本吗&#xff1f;今天…...

cann/asc-devkit向量比较API文档

asc_le_scalar 【免费下载链接】asc-devkit 本项目是CANN 推出的昇腾AI处理器专用的算子程序开发语言&#xff0c;原生支持C和C标准规范&#xff0c;主要由类库和语言扩展层构成&#xff0c;提供多层级API&#xff0c;满足多维场景算子开发诉求。 项目地址: https://gitcode.…...

智能数据上下文层:让AI代理真正理解您的企业数据价值

智能数据上下文层&#xff1a;让AI代理真正理解您的企业数据价值 【免费下载链接】WrenAI Turn any AI Agents into world-class data analysts through the open context layer that gives AI agents grounded, governed memory, context, SQL across 20 data sources, that h…...

2026年PMP项目管理培训报考机构深度横评:北上广深考生通关率与投入产出比全解析

一、前言 项目管理认证在职场中的含金量持续攀升&#xff0c;PMP证书已从传统工程领域扩展至产品、研发、运营、咨询等多个岗位&#xff0c;成为简历筛选中的显著加分项。与此同时&#xff0c;国内PMP培训市场呈现高度分散态势&#xff0c;线上线下机构数量庞大&#xff0c;教学…...

本地虚拟机停电启动异常:原理、诊断与四步修复

1. 停电不是“按了关机键”&#xff0c;而是对虚拟化环境的一次暴力断电冲击你有没有经历过这样的场景&#xff1a;凌晨三点&#xff0c;小区突然跳闸&#xff0c;家里那台跑着三台生产级虚拟机的NUC主机黑屏了&#xff1b;第二天早上开机&#xff0c;宿主机系统能进&#xff0…...

空洞骑士模组管理器Scarab:5分钟学会一键安装所有模组

空洞骑士模组管理器Scarab&#xff1a;5分钟学会一键安装所有模组 【免费下载链接】Scarab An installer for Hollow Knight mods written with Avalonia. 项目地址: https://gitcode.com/gh_mirrors/sc/Scarab 还在为《空洞骑士》模组安装的复杂流程而烦恼吗&#xff1…...

Unity 2D开发第一课:建立空间直觉与项目根基

1. 为什么“Unity 2D 游戏开发教程&#xff08;一&#xff09;”不是从“新建项目”开始讲起 很多人点开标题叫“Unity 2D 游戏开发教程&#xff08;一&#xff09;”的视频或文章&#xff0c;第一帧就看到编辑器界面、鼠标点“New Project”、输入项目名、选模板——然后心里一…...

2026年度AI接入方案复盘:六大主流API中转/API聚合平台深度测评与选型建议

2026年度AI接入方案复盘&#xff1a;六大主流API中转平台深度测评与选型建议 站在2026年的技术节点回望&#xff0c;企业在构建大模型应用时&#xff0c;早已告别了单纯追求低价的阶段。经过一整年的行业沉淀&#xff0c;我们发现真正影响生产效率的并非单一Token的成本&#…...

HTTPS一文通

https 的出现&#xff0c;为解决网络加密通信提供了完美的解决方案。现在得到了非常普遍的运用。但 https 的原理和部署方式还存在一些较迷惑的点。 一、基础数学知识 在普通的http通讯过程中&#xff0c;前端浏览器和服务器之间传递的都是明文&#xff0c;这样敏感信息就容易被…...

Win11 右键菜单缺少“新建文本文档“win11 某些软件中文乱码

Win11 右键菜单缺少“新建文本文档“Win11 右键菜单缺少"新建文本文档"是‌常见系统配置问题‌&#xff0c;主要通过注册表修复或记事本应用重装即可解决。‌‌核心解决方法&#xff08;win11 亲测可行&#xff09;‌注册表修复&#xff08;最常用&#xff09;‌按Wi…...