v0.0.1
私有仓库规范是:
docker.cnb.cool/theling/docker-training/<image_name>:latest
也就是说:
theling 是命名空间(project)docker-training 是镜像仓库名(repo)<image_name> 是你自定义的镜像名latest 是 tagmkdir node-pnpm-image
cd node-pnpm-image
touch Dockerfile
nano Dockerfile
写入以下内容:
# 使用官方 Node.js 镜像 FROM node:20 # **添加:安装 Python 3, pip, 和必要的构建工具** # 这通常用于解决 Node.js 模块(如 node-gyp)在构建时对 Python 的依赖 RUN apt-get update && \ apt-get install -y --no-install-recommends \ python3 \ python3-pip \ build-essential \ git \ && rm -rf /var/lib/apt/lists/* # 启用 corepack 并安装 pnpm 和 yarn RUN corepack enable \ && corepack prepare pnpm@latest --activate \ && corepack prepare yarn@1.22.22 --activate # 设置默认工作目录 WORKDIR /app # 默认命令 CMD ["node"]
保存并退出。
如果你还没登录或想重新登录:
docker logout docker.cnb.cool
docker login -u cnb docker.cnb.cool
请将 <image_name> 替换为你要命名的镜像名,例如 custom-node-pnpm:
docker build -t docker.cnb.cool/theling/docker-training/custom-node-pnpm:latest .
docker push docker.cnb.cool/theling/docker-training/custom-node-pnpm:latest
你可以在网页端打开 https://docker.cnb.cool,进入:
theling / docker-training / custom-node-pnpm
确认刚刚推送成功。
docker pull docker.cnb.cool/theling/docker-training/custom-node-pnpm:latest docker run -it docker.cnb.cool/theling/docker-training/custom-node-pnpm:latest pnpm -v docker run -it docker.cnb.cool/theling/docker-training/custom-node-pnpm:latest yarn -v