生成docker 镜像

编译h5应用

本文实验使用的是vue,但想来现在h5项目的编译命令都差不多吧。
执行npm 命令编译h5项目:

npm run build

打包镜像

新建目录: docker-h5
将h5项目编译生成的目录dist移动到docker-h5 目录中
在docker-h5目录中新建文件 “dockerfile”, 文件内容如下:

# 基于nginx:1.20镜像
FROM nginx:1.20
# 将dist文件中的内容复制到 /usr/share/nginx/html/ 这个目录下面
COPY dist/ /usr/share/nginx/html/dist/
# 用本地的 nginx.conf 配置来替换nginx镜像里的默认配置
COPY nginx.conf /etc/nginx/nginx.conf

新建nginx.conf文件,文件内容:

#user  nobody;
worker_processes  1;
events {worker_connections  1024;
}
http {include       mime.types;default_type  application/octet-stream;sendfile        on;#tcp_nopush     on;keepalive_timeout  65;# HTTP serverserver {listen 80;server_name  localhost;location / {root   /usr/share/nginx/html/dist;index  index.html index.htm;}error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}}
}

运行打包命令:

docker build -t demo-istio-h5:v1.0 .

运行docker 镜像

docker run

运行打包好的h5项目镜像

docker run -d --privileged=true --name demo-istio-h5 --restart always -p 8080:80 demo-istio-h5:1.0

参数解释:

--privileged=true        #容器内部拥有root权限
--restart always         #自启动
--net=host               #网络与宿主机保持一致
-p                          # 绑定宿主机端口:  {hostPort}:{continerPort}
--name                      #容器名称

通过url http://localhost:8080就能访问h5应用了。

kubernetes pod

创建yam文件 : demo-h5-pod.yaml

apiVersion: v1 #定义k8s api的版本v1
kind: Pod #kind资源 Pod
metadata: #属性,名字叫nginx,标签叫app : web(键值对)name: demo-istio-h5labels:app: demo-istio-h5
spec: #详细containers: #容器信息- name: demo-istio-h5 #容器叫nginximage: demo-istio-h5:v1.0 #使用的镜像,这样是使用本地nginx镜像,当然可以使用私有仓库镜像*.*.*.*:5000/nginx:latestports: #容器开放的端口- containerPort: 80

执行kubectl 命令创建pod

kubectl apply -f demo-h5-pod.yaml

通过以下命令查看pod是否创建成功

kubectl get pod

如下图:

docker: 打包h5项目的镜像相关推荐

  1. 2021-01-22 使用 Docker 打包 Python 项目

    使用 Docker 打包 Python 项目 1. 获取 Python 的镜像文件 项目的封装可以建立在已有镜像的基础上,在 Ubuntu 中可通过 docker pull python:3.6.8- ...

  2. docker打包Python项目

    docker打包Python项目 Step1: 配置运行环境文档 项目结构如下 docker_test ├── Dockerfile ├── (myapps) │ └── BPNN.py └── re ...

  3. hbuilderx打包h5项目遇到的问题

    参考更多打包h5遇到的问题 https://blog.csdn.net/weixin_45067120/article/details/106749113?spm=1001.2101.3001.665 ...

  4. uni-app 打包H5项目

    配置 uni-app 命令打包 1.启动服务 npm run serve 2.编译项目 npm run build %H5% 3.启动项目查看效果 npm run build cd dist cd b ...

  5. 老调重弹,Android Studio 打包H5项目(2020版)

    我是目录 一.下载Android Studio 二.新建安卓项目 三.一个完整的安卓应用需要哪些东西 1. 能访问网络 2. 能回退,像App一样 3. 自定义App图标,不要是个默认的Android ...

  6. hbuilderx打包h5项目白屏

    打包之前在根目录新建vue.config.js文件,写入 module.exports={publicPath: "./" } 之后在进行打包

  7. Maven打包SpringBoot项目镜像并推送至私有Harbor仓库

    1 准备工作: 1.1 搭建harbor 因为harbor是基于docker的,并且依赖于docker-compose,所以先要准备好dockers环境再安装好compose工具 1.1.1 dock ...

  8. docker打包 python镜像

    1.安装python3 这里有一个bug,由于centos系统自带python2,而且python的软连接是默认指向python2的, 所以,当安装python3之后,就需要修改软连接,将python ...

  9. linux运行dock打包的镜像,Linux部署之Docker方式部署项目

    Linux部署之Docker方式部署项目 1. 使用Docker对前端vue项目进行部署 1.1 环境准备 服务器或者虚拟机上先安装好Nginx和相关配置 docker pull nginx 拉去最新 ...

最新文章

  1. 【C/C++多线程编程之二】pthread简介
  2. 实现iframe_单点登录的三种实现方式,你会几种?
  3. TestNG 使 Java 单元测试轻而易举
  4. protocol buffer没那么难,不信你看这篇
  5. C#模板编程(1):有了泛型,为什么还需要模板?
  6. android studio占内存大小,极大精简android studio在C盘的内存
  7. 填错银行卡号导致放款失败?小心中招钓鱼网贷
  8. 【证明】【一题多解】—— 负梯度方向的证明
  9. 2017-2018-2 PDE 讨论班
  10. vue UI框架比较
  11. Linux上使用rpm安装Java jdk
  12. ios查看帧率的软件_iOS查看屏幕帧数工具--YYFPSLabel
  13. 【组合数学】组合恒等式总结 ( 十一个组合恒等式 | 组合恒等式证明方法 | 求和方法 ) ★
  14. HTML 调用打印机打印指定区域
  15. 给学习iOS开发同学的建议
  16. VC++利用微软msxml3.dll创建xml文件
  17. php各版本共存方法,PHP多版本共存解决方案图解
  18. 英语听力采用计算机化考试,高考英语听力机考特点与应对建议
  19. 多目标优化算法(四)NSGA3(NSGAIII)论文复现以及matlab和python的代码
  20. [python] fileinput模块

热门文章

  1. 笔记本禁用键盘的方法(已试过win10/win11均可生效)
  2. 信贷风控评分卡模型(上)_Give Me Some Credit(技术实现过程)
  3. 利用FME计算椭球面积
  4. 蒙特卡洛算法求矩形内切圆面积
  5. 月入3000万 估值一亿美金的微信公众号
  6. 使用TensorFlow XLA辅助实现BERT预训练加速
  7. UE4拾色器的实现,使用UE4自带的SColorPicker
  8. 安全好用的快充头,iPhone 13的好搭档,RAVPOWER 20W充电器上手
  9. you-get的一点修改
  10. 怎样增加图片的大小,不是尺寸哦!