微信扫码
与创始人交个朋友
我要投稿
"在我电脑上是好的啊!"
这句话是不是经常出现在你的开发生活中?不要担心,今天我们就要彻底解决这个让程序员也头秃的问题!
小明是一名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:latest
ports:
- "8080:80"
environment:
WORDPRESS_DB_HOST: db
WORDPRESS_DB_PASSWORD: somewordpress
db:
image: mysql:5.7
environment:
MYSQL_ROOT_PASSWORD: somewordpress
docker-compose up -d
http://localhost:8080
就能看到你的WordPress站点了!总耗时:不到5分钟!这就是容器的魔力!?
假设你想写一个简单的Web服务器,只需要:
# 创建一个简单的Flask Web服务器
from flask import Flask
app = 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.yml
services:
python-dev:
image: python:3.9
volumes:
- .:/app
services:
node-dev:
image: node:16
volumes:
- .:/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
- prod
environment:
- ENV=development
db:
image: postgres
profiles:
- dev
- prod
启动开发环境:
docker-compose --profile dev up
加入我们的星球,你将获得:
记住:工具始终是工具,重要的是它能帮我们解决什么问题。
有了Cursor + Docker:
准备好开始你的无环境烦恼之旅了吗?现在就行动吧!?
欢迎关注我们的公众号,获取更多技术干货!
加入星球,获得独家资源和指导!
53AI,企业落地应用大模型首选服务商
产品:大模型应用平台+智能体定制开发+落地咨询服务
承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业
2024-12-26
新型LLM优化技术削减内存成本高达75%
2024-12-26
AI模型训练到底在训练什么?
2024-12-25
微软变脸OpenAI,模型价值之争压不住了?
2024-12-25
GPT-5 研发一年半进度堪忧!每轮 5 亿美金训练成本打水漂,还得雇人从头“造数据”
2024-12-25
基于昇腾910B,使用XTuner微调一个InternLM个人小助手丨玩转书生大模型
2024-12-25
BERT新版本:ModernBERT -- Smarter, Better, Faster, Longer
2024-12-25
Cursor 0.44 重磅更新:全面提升 Agent 能力
2024-12-24
LLM微调系列:一篇超全的Lora综述,7大秘籍
2024-09-18
2024-07-11
2024-07-11
2024-07-09
2024-06-11
2024-10-20
2024-07-23
2024-07-26
2024-07-20
2024-07-12