如何使用 docker 部署一个 beego 项目docker 部署一个 beego 项目 作者:xhaoxiong 原文链接:https://ld246.com/article/1526210600840 来源网站:链滴 许可协议:署名-相同方式共享 4.0 国际 (CC BY-SA 4.0)理解 Docker
Docker 帮助你为应用程序创建一个单独的可部署单元。这个单元,也被称为容器,包含该应用 序需要的所有东西。它包括代码(或者二进制文件)、runtime(运行环境)、系统工具盒系统库。 所有必需的资源打包成一个单元将确保无论应用程序部署到哪里都有完全相同的环境。这也有助于维 一个完全相同的开发和生产配置,这在以前是很难追踪的。
一旦开始,容器的创建和部署将自动完成。它消除了一大类问题。这些问题主要是由于文件没有 步或者开发和生产环境之间的差异导致的。Docker 帮助解决了这些问题。
vi Dockerfile (一 将Dockerfile放入所对应需要部署的文件夹中以便于将对应的文件加入到docker中)0 码力 | 5 页 | 269.19 KB | 1 年前3
Best practices for building Kubernetes OperatorsBest practices for building Kubernetes Operators Patryk WasielewskiAbout me ● DevOps Consultant at Amazon Web Services (AWS) ● 6 years professional experience as DevOps / SRE / Developer ● Cloud-native json-patch/merge-patch support ○ Finalizers ○ Built-in Authz/AuthnControllers https://able8.medium.com/kubernetes-controllers-overview-b6ec086c1fbControllers ● Controller tracks at least one resource type ● backup, failover, recovery, etc.), for a software running within the Kubernetes cluster, https://www.cncf.io/blog/2022/06/15/kubernetes-operators-what-are-they-some-examples/Framework - Kubebuilder/Operator-sdkCapability0 码力 | 36 页 | 2.19 MB | 6 月前3
Practices of Go Microservices on Post-Kubernetes-Wei Zhengon Post-Kubernetes 郑伟 ⽯墨⽂档 Background in Shimo Language • Go • Node • Rust Background in Shimo Framework • Gin • Echo • gRPC • … Background in Shimo Platform • All in Kubernetes • Ingress IDL Debug IDL Mock ... API Gateway Framework(Ego) Auth Interceptor Metrics IDL Docs Kubernetes Redis CMP DB CMP Log Interceptor Err Interceptor Metric Interceptor MQ CMP Mongo Debugging • How to debugging service with dependencies? • Use VPN to connect develop kubernetes cluster. • With Kubernetes API server Resolver, we can resolve dependent services. IDL Tool Chain - gRPC Local0 码力 | 59 页 | 5.66 MB | 1 年前3
3.云原生边云协同AI框架实践Client devices Edge AI • 随着大模型的发展,AI 计算对算力需求大 幅且快速增长 AI应用到越来越多的边缘场景 分布式协同AI 概念 将人工智能相关的部分任务部署到边缘设备,基于边缘设备、边缘服务 器、云服务器,利用分布式乃至分布式协同方式实现人工智能的技术 数据在边缘产生 边侧逐步具备AI能力 分布式协同AI 核心驱动力 分布式协同AI核心驱动力 技术挑战 边云协同AI框架 第二部分 首个分布式协同AI开源项目Sedna 基于KubeEdge提供的边云协同能力,支持现有AI类应用无缝下沉到边缘 为分布式协同机器学习服务 ✓ 降低构建与部署成本 ✓ 提升模型性能 ✓ 保护数据隐私 SIG成员近年发表分 布式协同AI顶会论文 10+ SIG成员在AI顶会IJCAI 上分享分布式协同AI论文 Sedna斩获中国信通院云边协 同应用创新大赛最佳创新奖 数据集等 3. Worker ⚫ 执行训练或推理任务, 训练/推理程序, 基于现有AI框 架开 ⚫ 按需启动, docker容器或function ⚫ 不同特性对应不同的worker组, 可部署在边上或云 上, 进行协同 4. Lib ⚫ 面向AI开发者和应用开发者, 暴露边云协同AI功能给 应用 Cloud Edge Local Controll er KubeEdge0 码力 | 37 页 | 2.36 MB | 1 年前3
02. Service Mesh落地之后_为sidecar注入灵魂 - 周群力of Layotto Service Mesh 落地之后: 为 sidecar 注入灵魂 2 • Multi Runtime: 从 sidecar 到机甲 • Runtime API: 解决跨云部署和厂商绑定难题 • WebAssembly in sidecar: 让业务逻辑跑在sidecar里 • Service Mesh 回顾 • 展望2022:待解决的问题 • 总结 3 Service 公司提出 服务网格是一个基础设施层,用于处理服务间通信。云原生应用有着复杂的服务拓扑,服 务网格负责在这些拓扑中实现请求的可靠传递。在实践中,服务网格通常实现为一组轻量 级网络代理,他们与应用程序部署在一起,而对应用程序透明。 Service Mesh 的初衷 5 图片来源: https://new.qq.com/omn/20190806/201908 06A0SM4Q00.html 图片来源: 流量拦截 交互方式 私有协议 通信协议 高 能力丰富度 Http/gRPC 标准协议 19 Dapr Dapr 20 • 提供多种分布式能力 • 对接了丰富的基础组件 • 厂商解绑,跨云部署 21 事情没有那么 简单 Dapr 没解决什么 22 App 怎么落地 方案 1:替换 方案 2:共存 《The ABC of Lock-In》 2012 年 2 月,一篇文章讲了一个有趣的故事0 码力 | 63 页 | 880.85 KB | 1 年前3
05. OpenKruise镜像预热实践_王思宇通过 OpenKruise 实现大规模集群 镜像预热&部署发布加速实践 王思宇(酒祝) 阿里云容器服务 技术专家 OpenKruise author & maintainer 目 录 前言:OpenKruise 简介 01 为什么说人人都需要镜像预热 02 OpenKruise 是如何实现镜像预热的 03 如何通过镜像预热加速部署&发布 04 版本前瞻:原地升级与预热的结合 05 第一部分 Cloud Native & Kubernetes & Go OpenKruise 是什么 OpenKruise( https://github.com/openkruise/kruise ): • CNCF 托管的 Sandbox 项目 • 阿里云开源的基于 Kubernetes 的云原生应用自动化套件 • 阿里巴巴经济体上云全面使用的部署基座 社区用户: • 携程、OPP 300 imagepulljob controller NodeImage node1 NodeImage node2 NodeImage node3 整体预热流程 如何通过镜像预热加速部署&发布 第四部分 常见预热使用场景 apiVersion: apps.kruise.io/v1alpha1 kind: ImagePullJob metadata: name: base-image-job0 码力 | 28 页 | 5.78 MB | 1 年前3
Golang大规模云原生应用管理实践Solver,聚焦中间件,容器,Kubernetes,PaaS平台… • OAM社区成员 开局一张图 规模化应用交付效率对比去年 每万笔峰值交易的IT成本对比4年前 提升1倍 下降80% 云原生 技术 稳定 成本 效率 云原生-程序员视角 基础设施 K8s 云原生生态(CNCF) 云原生应用 云原生是以容器技术为基础围绕着Kubernetes进行的一场技术标准化演进。通过标准可扩展的调度,网络, 策略与机制要分离; • 策略与机制随着层次的变化而变化; 应用管理的策略与机制 应用 版本 工作负载 负载均衡 标签 流量 组件 日志 指标 容量 服务 依赖 路由规则 持久卷 部署策略 健康检查 … 灰度 发布 定时弹性 事件 指标弹性 分批发布 重启 回滚 日志管理 事件中心 指标监控 存储挂载 服务绑定 手动弹性 回退历史 负载均衡 报警 controller manager KEDA controller Flagger controller Prom- controller Istio- controller … 部署 控制器 弹性 控制器 流量 控制器 存储 控制器 负载均衡 控制器 限流降级 控制器 监控 控制器 … 应用模型 控制器 平台应用模型 平台特定业务 用户应用模型0 码力 | 23 页 | 7.70 MB | 1 年前3
1.2 基于 Golang 构建高可扩展的云原生 PaaS 平台业务系统 B 资源管理在统⼀平台 应⽤运⾏在统⼀平台 构建标准的交付环境 交付产物标准化 - 业务配置 - 资源配置 - 依赖配置 - 流⽔线配置 配置即代码 : 实现⼤规模交付的部署过程可被验证 PaaS 平台:资源管理,容器编排,基础监控和告警 APM 监控:应⽤诊断,链路追踪,⽇志分析 微服务治理组件 可靠的业务 贴身护航 基础⽀撑 持续保障系统稳定性 只需很少的运维投⼊即可保证系统稳定性 推荐 … 代码管理 持续集成 编排部署 应⽤运维 测试管理 协同管理 数据源管理 数据集成 数据开发 数据资产 数据服务 数据应⽤ 资源统计 运维报告 审计⽇志 K8S 管理 数据监控 多云管理平台 MySQL Redis Kafka ES MQ Minio 中间件 通⽤服务 ⾃定义服务 服务市场 Kubernetes Rancher Openshift Openshift 私有云 公共 物理机 虚拟机 微服务治理平台 DevOps 平台 边缘监控 边缘站点管理 制品 快速分发部署 边缘⽇志 边缘计算平台 边缘数据收集 边缘算⼒调度 ⽹络⾃动容错 平台产品 核⼼引擎 容器服务 基础设施 数仓设计 数据智能平台 智能预测 智能客服 智能仓储 智能推荐 流程⾃动化 智能营销 快数据平台 Linux OS, Kernel >=0 码力 | 40 页 | 8.60 MB | 1 年前3
2.2.5 Go 如何助力企业进行微服务转型单体和微服务怎么选? 单体的优点 • 开发简单 • 测试简单 • 部署简单 • 扩展简单 单体的缺点 • 难以理解和功能扩展 • ⼩改动也得全量更新 • ⼩问题容易触发⼤故障 • 能够⽀撑的业务规模有限 微服务的优点 • 边界清晰的业务拆分 • 易开发、易理解、易维护 • 技术栈可相对独⽴ • 持续集成、持续部署更容易 • 按需对服务进⾏治理 • 稳定性更容易保障 稳定性更容易保障 微服务的缺点 • 增加了系统复杂度 • 数据拆分复杂度 • 难调试、难测试 • 跨服务修改麻烦 • 部署复杂 到底怎么选? • ⾸先看业务 • 其次看团队 • 从简单⼊⼿ • 预留可能性 单体也有讲究 • 数据梳理清楚很重要 • 快速开发 • 快速交付 • 善⽤⼯具,降低出错 • 不增加成本并为业务发展留下扩展空间 单体到微服务何时转? • 保留回滚可能性 数据迁移 CI/CD • mono repo • gitlab + jenkins • ansible + supervisor • docker + kubernetes • kind Wrap up • Prefer Go over … • 怎么选? • 何时转? • 怎么转? go-zero渐进式微服务框架 • 9.2K stars •0 码力 | 25 页 | 4.51 MB | 1 年前3
2.游戏战中陪伴助手微服务架构设计与应用135 行代码 + 82 行注释 + 开发模式文档 交接周期 未知(未交接过) 1 天(几位开发参与过) 持续测试 无 有 性能和成本优化 第四部分 贵 - 部署:腾讯云 TKE(Tencent Kubernetes Engine);微服务 - 上线前压测: - 预估 CPU:20,000+ 核,其中推荐系统接近 18,000 - 现象:网络流量极大 - 原因:流量中包含对局完整历史(Token0 码力 | 47 页 | 11.10 MB | 1 年前3
共 57 条
- 1
- 2
- 3
- 4
- 5
- 6













