云开发的环境库。可以直接制品库中下载。也可以用import语法拼接。 让环境仓库和开发仓库分离,单独维护。
本仓库提供了一套模块化的Docker制品创建系统,通过以下步骤可以创建自定义的Docker镜像:
在/workspace/apps目录下创建一个新的应用目录:
mkdir -p /workspace/apps/your-app-name
在应用目录中创建一个基本的Dockerfile,可以引用基础镜像和组件:
# 从基础镜像继承 FROM /workspace/base/Dockerfile.node # 引入组件 # INCLUDE_COMPONENT: dev-tools.dockerfile # 应用特定配置 WORKDIR /app COPY . . RUN npm install EXPOSE 3000 CMD ["npm", "start"]
使用build-dockerfile.sh脚本处理您的Dockerfile,解析引用并生成完整的Dockerfile:
/workspace/scripts/build-dockerfile.sh /workspace/apps/your-app-name
这将在应用目录中生成Dockerfile.generated文件。
使用标准的Docker命令构建镜像:
cd /workspace/apps/your-app-name
docker build -t your-app-name:latest -f Dockerfile.generated .
如果需要分享或部署,可以将镜像推送到Docker仓库:
docker tag your-app-name:latest registry-url/your-app-name:latest docker push registry-url/your-app-name:latest
要一次性构建所有应用的Dockerfile,可以使用:
/workspace/scripts/build-all.sh
/workspace/base/: 包含基础Dockerfile模板/workspace/components/: 包含可复用的Dockerfile组件/workspace/apps/: 包含各个应用的Dockerfile/workspace/scripts/: 包含构建脚本本系统使用四种方法实现Dockerfile的复用和组合:
base目录中定义基础Dockerfilecomponents目录中定义可复用的Dockerfile片段apps目录下为每个应用创建专门的Dockerfile