【无标题】

打包镜像

镜像源:

复制代码
Registry Mirrors:
  https://docker.registry.cyou/
  https://docker-cf.registry.cyou/
  https://dockercf.jsdelivr.fyi/
  https://docker.jsdelivr.fyi/
  https://dockertest.jsdelivr.fyi/
  https://mirror.aliyuncs.com/
  https://dockerproxy.com/
  https://mirror.baidubce.com/
  https://docker.m.daocloud.io/
  https://docker.nju.edu.cn/
  https://docker.mirrors.sjtug.sjtu.edu.cn/
  https://docker.mirrors.ustc.edu.cn/
  https://mirror.iscas.ac.cn/
  https://docker.rainbond.cc/

需要注意宿主机和部署实例操作系统的区别
docker buildx build --platform linux/amd64,linux/arm64 --tag <imageName>:<version>

使用Docker默认的builder,可能会产生下述错误:

docker-container驱动意味着 buildx 将在独立的 Docker 容器中运行,支持多架构可移植性等特性,如果未指定,则使用默认的docker驱动

需要创建一个新的 builder 实例(如果不能翻墙,可以使用配置了镜像加速地址的 dockerpracticesig/buildkit:master 镜像替换官方镜像)
docker buildx create --use --name=<builderName> --driver docker-container --driver-opt image=dockerpracticesig/buildkit:master

再次执行构建命令
docker buildx build --platform linux/amd64,linux/arm64 --tag <imageName>:<version> .

部署

以minikube为例,将本地的镜像上传至minikube
minikube image load <imageName>:<version>

运行镜像,如果没有指定控制器,则默认创建一个pod
kubectl run <podName> --image=<imageName>:<version> --port=<容器端口> //端口要写,不然无法通过服务暴露

本地访问

● 创建NodePort服务,使用端口转发或者minikube自带的service命令暴露服务

bash 复制代码
//1. 创建服务
kubectl expose pod <podName> --type=NodePort --port=<服务端口> --target-port=<容器端口> --name <serviceName>
//2. 暴露服务
- minikube service <serviceName> //会启动本地浏览器打开页面
- kubectl port-forward service/<serviceName> <本地端口>:<服务端口> //需要自己打开 localhost:本地端口

● 创建LoadBalancer,但minikube并未支持创建负载均衡,由于loadbalancer是nodeport的扩展,所以会变成一个普通的nodePort服务

相关推荐
金刚猿1 天前
01_虚拟机中间件部署_root 用户安装 docker 容器,配置非root用户权限
docker·中间件·容器
JH_Kong1 天前
解决 WSL 中 Docker 权限问题:从踩坑到完整修复
docker·容器
忆~遂愿1 天前
GE 引擎与算子版本控制:确保前向兼容性与图重写策略的稳定性
大数据·开发语言·docker
Harvey9031 天前
通过 Helm 部署 Nginx 应用的完整标准化步骤
linux·运维·nginx·k8s
70asunflower1 天前
Emulation,Simulation,Virtualization,Imitation 的区别?
linux·docker
春日见1 天前
车辆动力学:前后轮车轴
java·开发语言·驱动开发·docker·计算机外设
xuhe22 天前
[全流程详细教程]Docker部署ClawBot, 使用GLM4.7, 接入TG Bot实现私人助理. 解决Docker Openclaw Permission Denied问题
linux·docker·ai·github·tldr
星火s漫天2 天前
第一篇: 使用Docker部署flask项目(Flask + DB 容器化)
数据库·docker·flask
MonkeyKing_sunyuhua2 天前
docker compose up -d --build 完全使用新代码打包的方法
docker·容器·eureka
醇氧2 天前
【docker】mysql 8 的健康检查(Health Check)
mysql·docker·容器