前端工程、静态代码、Html页面 打包成nginx 的 docker镜像

news2024/9/23 5:23:05

1. 创建一个 mynginx的目录

2. 将前端代码文件夹(比如叫 front )复制到 mynginx 目录下

3. 在mynginx 目录下创建一个名为Dockerfile 的文件(文件名不要改),文件内容如下:

# 使用官方的 Nginx 镜像作为基础镜像
FROM nginx:latest

RUN mkdir -p /app

# 将工作目录设置为 /app
WORKDIR /app

# 将宿主机 front目录下的文件复制到容器的 /app 目录
# 注意这里不要写绝对路径
COPY front/*   /app

# 删除nginx容器中代码目录中自带的文件
RUN rm /usr/share/nginx/html/*

# 将/app 中所有文件复制到 /usr/share/nginx/html/
RUN cp /app/*  /usr/share/nginx/html/

# 暴露 80 端口供外部访问
EXPOSE 80

# 容器启动时运行 Nginx
CMD ["nginx", "-g", "daemon off;"]

一定要注意,COPY 这一步 ,将宿主机上front文件夹中的文件复制到容器中,front目录一定不要写成绝对路径,我之前写的是绝对路径(/opt/myimages/mynginx/front/*)报错如下:

ERROR: failed to solve: lstat /var/lib/docker/tmp/buildkit-mount2707332014/opt/myimages/mynginx/front: no such file or directory

可以看到 最后在执行copy命令时前面 被加上了 这个目录,所以导致找不到front目录了:

/var/lib/docker/tmp/buildkit-mount2707332014

最后mynginx目录中的内容如下,可以看到front目录下有个a.html文件:

  

4. 创建镜像, 执行命令如下

docker build -t my-custom-nginx .

5. 运行镜像,执行命令如下

docker run -d -p 8080:80 --name my-custom-nginx-container my-custom-nginx

6. 测试

curl  http://127.0.0.1:8080/a.html 

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

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

相关文章

【C++】泛型编程 ⑭ ( 类模板示例 - 数组类模板 | 容器思想 | 自定义类可拷贝 - 深拷贝与浅拷贝 | 自定义类可打印 - 左移运算符重载 )

文章目录 一、容器思想1、自定义类可拷贝 - 深拷贝与浅拷贝2、自定义类可拷贝 - 代码示例3、自定义类可打印 - 左移运算符重载 二、代码示例1、Array.h 头文件2、Array.cpp 代码文件3、Test.cpp 主函数代码文件4、执行结果 一、容器思想 1、自定义类可拷贝 - 深拷贝与浅拷贝 上…

企业软件定制开发的优势|app小程序网站搭建

企业软件定制开发的优势|app小程序网站搭建 企业软件定制开发是一种根据企业特定需求开发定制化软件的服务。相比于购买现成的软件产品,企业软件定制开发具有许多优势。 1.企业软件定制开发可以满足企业独特需求。每个企业都有自己独特的业务流程和需求,…

为什么vue中数组和对象的props默认值要写成函数形式?

多个组件数据不相互干涉 假如在一个地方引用了同一个组件,并给他们都绑定了单独的值。如果只声明为一个对象或数组,可能会导致在某一个实例中修改数据,影响到其他实例中的数据,因为数组和对象是引用类型的数据。为了在多次引用组件…

揭秘:如何精准定位性能瓶颈,优化系统性能?

你好,我是静姐,目前在一家准一线互联网大厂做测试开发工程师。对于一般公司普通测试工程师来说,可能性能测试做的并不是很复杂,可能只是编写下脚本,做个压测,然后输出报告结果,瓶颈分析和调优的…

ubuntu安装cuda驱动报错及解决,屡试不爽

机器重启输入nvidia-smi提示如下错误,字面意思就是驱动和库不匹配 Failed to initialize NVML: Driver/library version mismatch 查看一下nvidia相关库 sudo dpkg --list | grep nvidia-* 将所有已安装库卸载 sudo apt purge nvidia-* 重新安装驱动 sudo ./NVIDIA-Linux-…

Java实现王者荣耀小游戏

主要功能 键盘W,A,S,D键:控制玩家上下左右移动。按钮一:控制英雄发射一个矩形攻击红方小兵。按钮控制英雄发射魅惑技能,伤害小兵并让小兵停止移动。技能三:攻击多个敌人并让小兵停止移动。普攻:对小兵造成基础伤害。小…

redis的集群,主从复制,哨兵

redis的高可用 在Redis中,实现高可用的技术主要包括持久化、主从复制、哨兵和集群,下面分别说明它们的作用,以及解决了什么样的问题。 持久化: 持久化是最简单的高可用方法(有时甚至不被归为高可用的手段)…

京东大数据分析:2023年10月手机行业销量同比增长249%

今年双11,手机仍是竞争极为激烈的产品品类,各大手机厂商均在双11之前做足了准备,10月下旬,各电商平台双十一预售正式开启。而在双11大促节的参与下,10月份手机市场的整体销售也呈现增长趋势。 根据鲸参谋平台的数据显示…

mybatis 基本操作 删除 插入 更新 查询

根据主键删除数据 插入数据 -- 插入 insert into emp(username, name, gender, image, job, entrydate, dept_id, create_time, update_time) values (tom,塔姆,tom,1 , 1.png ,now(),1,now(),now() Options(keyProperty "id",useGeneratedKeys true) Insert(&quo…

[译]JavaScript中Base64编码字符串的细节

本文作者为 360 奇舞团前端开发工程师 本文为翻译 原文标题:The nuances of base64 encoding strings in JavaScript 原文作者:Matt Joseph 原文链接:https://web.dev/articles/base64-encoding Base64编码和解码是一种常见的将二进制内容转…

将对象转成URL参数

背景 有的时候前端跳转到其他平台的页面需要携带额外的参数,需要将对象转成用 & 连接的字符串拼接在路径后面。 实现方法

SquareCTF-2023 Web Writeups

官方wp:CTFtime.org / Square CTF 2023 tasks and writeups sandbox Description: I “made” “a” “python” “sandbox” “”“” nc 184.72.87.9 8008 先nc连上看看,只允许一个单词,空格之后的直接无效了。 flag就在当…

河北专升本(微机原理)

目录 第一章:计算机基础与数制转化 1. 进制运算基础 2. 常用编码形式 3. 计算机系统的组成及其工作原理 4. 微机系统主要技术指标 第二章:8086微处理器及其系统 1. 8086微处理器(CPU) 2. 8086的存储器及I/O组织 3. 8086系…

TikTok历史探秘:短视频中的时间之旅

在数字时代的浪潮中,TikTok崭露头角,成为社交媒体领域的一颗耀眼新星。这款短视频应用以其独特的创意、时尚和娱乐性质,吸引了全球数以亿计的用户。 然而,TikTok并非一夜之间的奇迹,它背后蕴藏着丰富而有趣的历史故事…

Course1-Week2-多输入变量的回归问题

Course1-Week2-多输入变量的回归问题 文章目录 Course1-Week2-多输入变量的回归问题1. 向量化和多元线性回归1.1 多维特征1.2 向量化1.3 用于多元线性回归的梯度下降法 2. 使梯度下降法更快收敛的技巧2.1 特征缩放2.2 判断梯度下降是否收敛2.3 如何设置学习率 3. 特征工程3.1 选…

管理时间的四象限法则

在管理工作和生活中,我们经常面临着各种各样的任务和事务。为了更好地处理这些任务,可以借鉴“重要紧急”、“重要不紧急”、“不重要紧急”以及“不重要不紧急”这四个象限的概念。 重要紧急:这类任务需要立刻行动,因为它们对目…

PPT思维导图怎么做?这2个思维导图工具墙裂推荐!

在日常学习和工作中,我们常常会面临需要处理大量信息的情况,这时候,一种叫做思维导图的工具可能会成为你的救星。 不同于传统的线性记录方式,思维导图以其独特的视觉表现力和结构化的信息处理方式,使得人们能够更加有…

实时截留抖音询价的用户:10个合规方法,让你的业务迅速增长!

先来看实操成果,↑↑需要的同学可看我名字↖↖↖↖↖,或评论888无偿分享 一、引言 随着抖音的普及度越来越高,越来越多的商家开始关注抖音询价用户。这些潜在客户对于企业的发展至关重要,如何实时截留这些用户成为商家关注的重点…

Python 基础【四】--数据类型-字符串【2023.11.23】

1 .定义 字符串是 Python 的一种数据类型,它可以通过单引号 ‘、双引号 "、三引号 ‘’’ 或 “”"来定义。 aabcd bacsdcd c"""accsfv""" print(a) print(b) print(c)2 .基本操作 访问单个字符 注意:从0开始…

detectron2安装

目录 macos安装windows安装提前准备下载detetron2文件激活你要安装的环境运行安装代码 windows下可能出现的问题 macos安装 建议直接照着官方文档,我当时记得是一步安装成功 网站 windows安装 略微麻烦,听我娓娓到来 提前准备 安装git 下载detetro…