如何在gitpod.yml预构建流程中配置安装requirements.txt依赖
Gitpod配置正确性说明
- 你的配置思路是正确的:Gitpod的
init阶段命令会在预构建环节执行,执行结果会被缓存到工作区镜像中,后续打开工作区时不会重复执行该阶段命令,完全可以解决每次打开都要重装依赖的问题。 - 你当前的写法可以正常运行,但有2处可以优化的点:
- 无需新增独立的task节点,可将依赖安装命令合并到原有
init字段中,避免冗余的task配置 command字段中的python3 manage.py需要补全启动参数,要绑定0.0.0.0地址和你配置的3000端口,否则端口预览功能无法正常使用
- 无需新增独立的task节点,可将依赖安装命令合并到原有
优化后完整配置参考
image: file: .gitpod.Dockerfile # 启动任务配置 tasks: - init: | echo 'init script' # 预构建阶段安装依赖,会被缓存 pip3 install -r requirements.txt command: | echo 'start script' # 启动Django服务,绑定对应端口 python3 manage.py runserver 0.0.0.0:3000 # 端口暴露配置 ports: - port: 3000 onOpen: open-preview vscode: extensions: - ms-python.python - ms-azuretools.vscode-docker - eamodio.gitlens - batisteo.vscode-django - formulahendry.auto-close-tag - esbenp.prettier-vscode
补充注意事项
- 如果你的
requirements.txt不在工作区根目录,需要在pip3 install命令前加上cd切换到对应文件所在目录的操作 - 配置修改后推送到仓库,触发一次Gitpod预构建后,后续新打开的工作区就会复用缓存的依赖,无需重复安装
内容的提问来源于stack exchange,提问作者Ryan Thomas
相关产品推荐
相关产品推荐

