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