本方案的最终效果: 在本地用docker-compose启动一个完整的arkid环境,vscode容器化开发调试arkid后端,无需本地安装python和依赖。 设计思想: 镜像里准备好所需的开发环境,然后本地代码挂载到容器里,在容器里开发启动;docker-compose启动一整套环境,开发和部署的环境是真正的一个环境!
一、程序安装
- Docker Desktop
- docker-compose
- vscode
需要安装插件:remote-containers、python
二、克隆arkid后端仓库
git clone https://github.com/longguikeji/arkid.git
三、生成后端开发镜像
docker build -t arkid-dev arkid -f arkid/Dockerfile-for-dev
四、启动arkid
cd arkid/devops/docker-composedocker-compose up -d
五、vscode开发arkid后端
1、打开vscode,点击“Attach to Running Container”, 选择arkid-be

2、点击 detail 查看进度
3、第一次打开之后需要点击 打开文件夹,项目文件在 /root/workspace/arkid

4、调试启动
配置文件:
{// 使用 IntelliSense 了解相关属性。// 悬停以查看现有属性的描述。// 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387"version": "0.2.0","configurations": [{"name": "Python: Django","type": "python","request": "launch","program": "${workspaceFolder}/manage.py","args": ["runserver","0.0.0.0:80","--noreload"],"django": true}]}

5、启动之后,把端口暴露到笔记本端口,就可以在本地对接口进行测试了
六、vscode开发arkid前端
1、容器中打开
2、修改配置文件vue.config.js

3、启动前端
4、浏览器访问前端

七、问题:
- vscode中git无法commit/push
这个无解,因为我们的vscode在容器中,推荐使用 GitHub Desktop 或者 Sourcetree进行版本管理
