通过dockerfile 生成自定义nginx镜像

通过dockerfile生成自定义nginx镜像

!!!docker 必须在linux环境下才能进行如果你是window则需要装虚拟机

新建一个文件名字为Dockerfile,无需后缀 文件完整名就是Dockerfile

编写dockerfile

FROM nginx
RUN echo 'hello nginx!!!!' > /usr/share/nginx/html/index.html

image-20240123112201665

切换到test1目录执行构建动作。

执行docker build -t nginx:v3 .

以下示例,通过目录下的 Dockerfile 构建一个 nginx:v3(镜像名称:镜像标签)。

:最后的 . 代表本次执行的上下文路径

image-20240123112324910

上一节中,有提到指令最后一个 . 是上下文路径,那么什么是上下文路径呢?

$ docker build -t nginx:v3 .

上下文路径,是指 docker 在构建镜像,有时候想要使用到本机的文件(比如复制),docker build 命令得知这个路径后,会将路径下的所有内容打包。

解析:由于 docker 的运行模式是 C/S。我们本机是 C,docker 引擎是 S。实际的构建过程是在 docker 引擎下完成的,所以这个时候无法用到我们本机的文件。这就需要把我们本机的指定目录下的文件一起打包提供给 docker 引擎使用。

如果未说明最后一个参数,那么默认上下文路径就是 Dockerfile 所在的位置。

注意:上下文路径下不要放无用的文件,因为会一起打包发送给 docker 引擎,如果文件过多会造成过程缓慢。

**Dockerfile的文件名默认为Dockerfile,**这是Docker官方推荐的命名方式。当我们在构建镜像的时候,Docker会默认在当前目录下查找名为Dockerfile的文件,并根据文件中的内容构建镜像。但是,如果你想给Dockerfile取一个自定义的名字,也是完全可以的。

当我们需要使用自定义的Dockerfile名字时,我们需要在构建镜像的时候通过-f或–file参数指定Dockerfile的路径。下面是一个示例:

docker build -f my-dockerfile .

查看是否成功 docker images

image-20240123112606887

运行镜像

docker run --name nginx-test -p 8080:80 -d nginx:v3

image-20240123112654143

参数说明:

  • –name nginx-test:容器名称。
  • -p 8080:80: 端口进行映射,将本地 8080 端口映射到容器内部的 80 端口。
  • -d nginx: 设置容器在在后台一直运行。

访问成功

image-20240123112922858

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于ADAU1777 DSP有源降噪(主动降噪)耳机设计

加我微信hezkz17可以申请加入数字音频系统研究开发交流答疑群,加群附加赠送DSP音频项目核心开发资料,TWS降噪蓝牙耳机项目资料 1 ADU1777芯片介绍 2 DSP 三种主动降噪方式 3 sigma开发方式

9-树-从前序与中序遍历序列构造二叉树

这是树的第9篇算法,力扣链接。 给定两个整数数组 preorder 和 inorder ,其中 preorder 是二叉树的先序遍历, inorder 是同一棵树的中序遍历,请构造二叉树并返回其根节点。 示例 1: 输入: preorder [3,9,20,15,7], inorder [9,3,…

06 - python操作xml

认识XML 与HTML很像,是一种将数据存储在标记之间的标记语言,用户可以自定义自己的标记。 XML文件可以表示称为:XML树。这个XML树从根元素开始,根元素进一步分支到子元素。XML文件的每个元素都是XML树的一个节点,没有…

雷达DoA估计的跨行业应用--麦克风阵列声源定位(Matlab仿真)

一、概述 麦克风阵列: 麦克风阵列是由一定数目的声学传感器(麦克风)按照一定规则排列的多麦克风系统,而基于麦克风阵列的声源定位是指用麦克风拾取声音信号,通过对麦克风阵列的各路输出信号进行分析和处理,…

背景样式de七七八八

一,简介 背景属性可以设置背景颜色、背景图片、背景平铺、背景图片位置、背景图像固定等。 1.1背景颜色(background-color) background-color:transparent/color; 默认值为transparent(透明的&#xff…

MacBook有必要装清理软件吗?CleanMyMac的一些主要特点

MacBook是苹果公司的一款高端笔记本电脑,但是,随着使用时间的增长,MacBook也会出现一些问题,比如运行缓慢、卡顿、垃圾文件堆积、磁盘空间不足等。这些问题不仅影响了用户的使用体验,也可能对MacBook的寿命和安全性造成…

Vue3.0(二):Vue组件化基础 - 脚手架

Vue组件化基础 - 脚手架 Vue的组件化 我们在处理一些任务量比较庞大的工作时候,会将工作内容进行拆分,分步骤完成 而组件化的思想正式如此,对于一个庞大的项目,我们可以将其拆分成一个个的小功能,分步骤进行实现 组…

迅为RK3588开发板ubuntu和window互传图形界面直接拖拽进行文件传输

确保以及安装了 VMware Tools。如下图所示表示已安装过了。 和 windows 端文件夹间传输一样直接拖拽进去即可,如下图所示: 也可拖拽到终端,如下图所示: 更多内容可以B站搜索迅为RK3588开发板

【Java报错】显示错误“Error:java: 程序包org.springframework.boot不存在“

使用idea运行项目,显示错误信息如下: 原因是:idea配置的maven加载不到autoconfigure。 解决方案一: 第6步绕过证书语句如下: -Dmaven.wagon.http.ssl.insecuretrue -Dmaven.wagon.http.ssl.allowalltrue 打开终端&am…

算法学习——华为机考题库10(HJ64 - HJ69)

算法学习——华为机考题库10(HJ64 - HJ69) HJ64 MP3光标位置 描述 MP3 Player因为屏幕较小,显示歌曲列表的时候每屏只能显示几首歌曲,用户要通过上下键才能浏览所有的歌曲。为了简化处理,假设每屏只能显示4首歌曲&a…

2024最新版鸿蒙HarmonyOS开发工具安装使用指南

2024最新版鸿蒙HarmonyOS开发工具安装使用指南 By JacksonML 0. 什么是鸿蒙Harmony OS? 华为鸿蒙系统(HUAWEI Harmony OS),是华为公司在2019年8月9日于东莞举行的华为开发者大会(HDC.2019)上正式发布的分…

JavaWeb:调出Maven面板

问题描述 情况说明:IDEA中找不到Maven面板,Maven面板如下图所示: 解决方案 选择 View > Appearance > Tool Window Bars: 然后就会出现Maven面板了。

SSO单点登录系统?or 统一身份中台?

单点登录(Single Sign-On,简称 SSO)是解决多个应用系统多次认证登录的一种方式,从应用侧切入,提高员工使用便利性,但未解决身份(账号)真正统一。传统路径通过属性映射方式完成各个账…

Hack The Box-Challenges-Misc-M0rsarchive

解压压缩包,里面是一张图片和一个新的zip文件 图片放大后的图案是----. 考虑到为莫斯密码,将其解密 密码为9,继续解压缩包 又是一张莫斯密码图加压缩包,写一段脚本去解密图片中的莫斯密码,并自动解压缩包 import re i…

MQ面试题整理(持续更新)

1. MQ的优缺点 优点:解耦,异步,削峰 缺点: 系统可用性降低 系统引入的外部依赖越多,越容易挂掉。万一 MQ 挂了,MQ 一挂,整套系统崩 溃,你不就完了?系统复杂度提高 硬生…

HiveSQL题——array_contains函数

目录 一、原创文章被引用次数 0 问题描述 1 数据准备 2 数据分析 ​编辑 3 小结 二、学生退费人数 0 问题描述 1 数据准备 2 数据分析 3 小结 一、原创文章被引用次数 0 问题描述 求原创文章被引用的次数,注意本题不能用关联的形式求解。 1 数据准备 i…

本次安装Visual Studio 所用的安装程序不完整。请重新运行VisualStudio安装程序以解决此问题

今天点开VS的时候遇到了这个问题 因为昨天升级到一半电脑关机了,今天打开软件遇到如下错误, 解决办法很简单,找到安装目录进入Installer文件夹 我的目录在C:\Program Files (x86)\Microsoft Visual Studio\Installer 找到vs_installer.exe…

idea修改项目git地址

大家好,今天给大家分享的知识是如何在idea中修改项目的git地址。 一、修改地址 首先我们先找到菜单栏中Git选项,然后点击管理远程(Manage Remote) 之后双击origin之后就可以定义名称或者URL了。

oracle主库增加redo组数

redo log(重做日志): 重做日志:简单来说就是,将oracle数据库的DML、DDL(数据库操作语言,数据库定义i语言)操作记录在日志中,方便恢复及备库使用,以组的方式管…

《Lua程序设计》-- 学习11

反射(Re fl ection) 反射是程序用来检查和修改其自身某些部分的能力 调试库由两类函数组成:自省函数(introspective function)和钩子(hook)。自省函数允许我们检查一个正在运行中的程序的几个…