微信扫码
与创始人交个朋友
我要投稿
"在我电脑上是好的啊!"
这句话是不是经常出现在你的开发生活中?不要担心,今天我们就要彻底解决这个让程序员也头秃的问题!
小明是一名Python初学者,兴致勃勃地开始了编程之旅:
第一天:
print("Hello World")
✅第二天:
pip install numpy# 报错 pip install pandas # 报错 pip install tensorflow # 疯狂报错
"为什么教程里面明明那么简单??"
第三天:
这可能就是大多数新手的真实写照。而在实际的团队开发中,情况可能更糟:
小王:我这边运行没问题啊 小张:我这报错,缺少XX模块 小李:我这边版本冲突了 老板:...这个项目什么时候能上线?
还记得最早的编辑器吗?不过是个会高亮的记事本。后来我们有了Cursor:
Cursor 是一款革命性的开发工具,它将 AI 能力深度集成到代码编辑器中。与传统 IDE 不同,Cursor 就像一位 24 小时在线的编程助手,能够理解你的意图,提供智能建议,甚至直接生成代码。
但它依然解决不了环境配置的问题。
还记得过去的货运方式吗?
一堆工人正忙着搬运各种大小不一的货物,有的装在麻袋里,有的放在木箱中,每次装卸都要耗费大量人力,货物还容易在运输途中损坏或丢失。
但自从有了集装箱,这一切都变得简单了:所有货物都被整整齐齐地装在规格统一的大铁箱子里,用起重机就能轻松完成装卸,既安全又高效。
Docker就是软件世界的集装箱!它让我们能够把应用和环境打包在一起,在任何地方运行,不同项目就像不同集装箱一样互不干扰。
Docker就是软件世界的集装箱!它让我们能够:
如果说Docker是一个集装箱,那Docker Compose就是一支运输舰队:
所有服务编组成船队,一个命令全部启航!
对于更大规模的项目,Kubernetes(K8s)就是你的超级航母编队:
但是,对于大多数开发者来说,Docker + Docker Compose已经足够了。
就像你可能需要骑自行车上班,但不一定需要开航空母舰!?
传统安装WordPress需要:
预计耗时:几小时到几天不等(取决于你的环境和运气?)
看看使用Docker有多简单:
version: '3'services: wordpress:image: wordpress:latestports:- "8080:80"environment:WORDPRESS_DB_HOST: dbWORDPRESS_DB_PASSWORD: somewordpress db:image: mysql:5.7environment:MYSQL_ROOT_PASSWORD: somewordpress
docker-compose up -d
http://localhost:8080
就能看到你的WordPress站点了!总耗时:不到5分钟!这就是容器的魔力!?
假设你想写一个简单的Web服务器,只需要:
# 创建一个简单的Flask Web服务器
from flask import Flaskapp = Flask(__name__)@app.route('/') def hello():return 'Hello, World!'if __name__ == '__main__': app.run(debug=True)
首先打开 Cursor,打到远程资源管理
点击开发容器: 如果你没有安装 Docker,Cursor 会提示你链接进行安装,安装步骤很简单,这里就不多做介绍了安装完成后的软件界面长这样
下一步点击创建新的容器,Cursor 很贴心的为让我们准备了各种的开发,拿来就能用
比如这里我直接选择python
下面的内容就是拉取镜像, 你可以把镜像当成是一个打包后的微型操作系统,里面会包含已经配置好的各种环境,不用再手动去进行安装
下面才是正式的开发过程
那根本就不是个事
环境不用配置了,我们直接安装包
很顺利,Amazing!
当然如果你全手动的来创建自己的容器开发环境也没有问题,下面是一些常用的环境配置,记得收藏,以后拿来就能直接用
Cursor + Docker的完美配合:
# docker-compose.ymlservices: python-dev:image: python:3.9volumes:- .:/app
services: node-dev:image: node:16volumes:- .:/app
想切换环境?一个命令就够了:
docker-compose up python-dev # 或者 docker-compose up node-dev
想要添加特定的工具和配置?创建自己的Dockerfile:
FROM python:3.9# 安装常用工具RUN pip install flask requests pandas numpy# 设置工作目录WORKDIR /app# 设置中文支持ENV LANG C.UTF-8# 启动命令CMD ["bash"]
更高级的是直接使用 .devcontainer 不过这个下回再说吧
开发、测试、生产环境统一管理:
version: '3'services: web:build: .profiles:- dev- prodenvironment:- ENV=development db:image: postgresprofiles:- dev- prod
启动开发环境:
docker-compose --profile dev up
加入我们的星球,你将获得:
53AI,企业落地大模型首选服务商
产品:场景落地咨询+大模型应用平台+行业解决方案
承诺:免费场景POC验证,效果验证后签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2024-09-18
2024-07-11
2024-07-11
2024-07-26
2024-07-09
2024-06-11
2024-12-29
2024-10-20
2024-07-20
2024-07-12