KMP从零创业 Live Show(4)-Docker

上集回顾

在上集中我们用jetbrains家的Fleet代码编译器开发了一个负责生成海报并提供接口服务的python项目.为后面部署到云服务器提前做准备,我们准备用docker把项目打包并在本地部署运行.

第四集-Docker

!tip 作为一名移动端开发,本人对docker的理解和使用都停留在一个非常浅显的阶段,所以本篇不涉及任何教学目的和意义,主要是想坚持初心.真实的记录下每天的节点.

聊聊Docker

docker给我最大的印象就是简单方便.通过简单的几步便能把当前项目打包成镜像,并在在任何系统环境使用的时候,都能保证毫不费力的把Image跑起来.不用再做配置环境和下载各种依赖之类的反锁重复的工作了.

docker常见的术语解释和命令.

  1. Dockerfile -生成image的文件.魔法一样,整个image的环境,构造方式等项目属性全部由它配置完成.
  2. Docker Image - 可以直接跑起来的image.(通过Dockerfile生成的,或者其他人创造共享出来的都算)
  3. Docker Registry - 类似于Github,能保存和分享image的社区
  4. Docker Container - 一个运行中的Docker image的容器实例.容器和整个系统是分开的,从而保证能在任何电脑系统中如期工作.
  5. Docker Volume - 一种把数据存储在container外的方式.通过此种方式让宿主机存储和container生成和需要的数据,这样才能保证业务和数据隔离.(避免container停止或者删除后的数据丢失问题)
  6. Docker Network - Docker containers之间通信的桥梁.
  7. Docker Daemon - 能通过CLI管理系统中Docker 对象(上面的1-5都属于Docker对象)的后台服务
  8. Docker Engine - CLI+上Docker Daemon.

常见基础命令

项目实操

这地方要注意.版本不能用3.13的,不然在生成image环节中安装numpy依赖时会报错.我在这里卡了好久~.改成3.12的就好了

运行docker run -p 5000:5000 你自己生成的image,可以看到服务起来了.但是有个警告有点烦.

根据提示,建议在生产环境中使用WSGI服务.这边搜了一下相关实现,选择了Gunicorn

arduino 复制代码
//命令行安装一下
pip install gunicorn

然后重新编辑一下Dockerfile 接着重新构建image,然后通过container跑起来

没问题.域名是0.0.0.0,端口5000.模拟一个get请求验证一下,接口成功返回了数据

剩下的接口不再一一展示了,应该都是通的,就算有问题,咱们修改后重新打个image也是几分钟的事情. 截止到现在,我们完成了后端服务的部署(本地).需要强调的是我们有了对应的Docker Image,有了它,后面我们需要部署到云服务器的时候就非常简单了.不管服务器是Ubuntu还是CentOS还是其他系统,都没问题.只要安装Docker,然后用cli去run 这个Docker Image,服务就会像在本地一样的运行在云服务器上.

下集预告

完全依靠 Figma AI,快速搭建一套可用的 UI 原型.大家对 Figma AI 在开发中的应用有任何"奇思妙想",欢迎在评论区留言,一起"搞事情"!

敬请期待我的后续文章!(保证不鸽!)

!todo

  • 做个什么?
  • 研究学习一下BeatPrints,把流程跑一跑,琢磨一下盈利点
  • 创建 python 项目提供接口,通过 docker 在本地运行,调通接口 (跪求好心python大佬们指导和支持,帮助我们快速实现预期的后台功能)
  • 通过 figma ai 生成 ui 图
  • 通过 app 页面交互,最终完成封面下载
  • 接入三方平台分享 sdk
  • 接入支付 sdk
  • 前后端用户注册登录及等级系统建立
  • 接入网易云 api
  • 健壮后端项目,做好场景覆盖和错误捕捉等
  • 上架
  • 待续补充
    !info 如果您觉得这篇文章对你有用或者有趣的话,请点赞,关注,收藏三连支持一下作者.

千万不要小看你随手善意的支持,每一份好心的善意最终都化为作者持续分享的动力

相关推荐
BullSmall35 分钟前
第三方软件安全-Dependency‑Track Docker 部署
安全·docker·容器
harmony&1 小时前
Docker 容器技术从入门到实战:容器、网络、存储与监控全解析
docker·云原生
傲笑风2 小时前
【openvino】tinybert基于openvino服务化部署(四)
人工智能·python·自然语言处理·nlp·bert·openvino
维基框架2 小时前
WIKI 知识库 v1.1.1 正式发布
人工智能·python
IT大白鼠4 小时前
Docker 私有仓库管理:Harbor 企业级仓库搭建与镜像全生命周期管理
运维·docker·容器
谢白羽6 小时前
SGLang的AWQ量化笔记
笔记·python·sglang
迷迭香yy6 小时前
基金档案数据工程实战从收入分析到持仓穿透的Python解析 IG50免费开源股票数据API接口
开发语言·python
清水白石0087 小时前
Python 类型设计深度解析:TypedDict 能否替代 dataclass?从 JSON 数据边界到 API 设计的最佳实践
java·python·json
bgy66667 小时前
从零上手 Docker,容器技术完整入门指南
运维·docker·容器
️学习的小王7 小时前
Git项目提交忽略文件怎么做?以Python项目为例,详解.gitignore
git·python·elasticsearch