
https://hub.docker.com/r/serafinlabs/nodejs/
本镜像是一个基于https://hub.docker.com/r/serafinlabs/alpine/%E7%9A%84nodeJS%E9%95%9C%E5%83%8F%EF%BC%8C%E5%8C%85%E5%90%AB%E5%B8%B8%E7%94%A8%E7%9B%B8%E5%85%B3%E5%B7%A5%E5%85%B7%E5%92%8C%E9%A1%B9%E7%9B%AE%E6%9E%84%E5%BB%BA%E8%84%9A%E6%9C%AC%E3%80%82**dev** 变体(参见标签)包含常用开发工具和特性。
dev 标签提供一些常用的nodeJS开发包(全局安装)以及基础镜像的开发工具。
开发相关Linux包:
开发相关nodeJS包:
适用于需要快速部署和运行nodeJS项目的场景,支持生产环境运行和开发环境调试。特别适合需要集成Git、NPM私有仓库访问等开发流程的nodeJS应用。
该镜像期望项目文件位于目录/srv。默认命令为npm start,因此镜像设计用于运行包含package.json文件且其中包含start脚本部分的项目,例如:
json"scripts": { "start": "forever --minUptime 1000 --spinSleepTime 1000 lib/index.js", }
bashdocker build Dockerfile
bashdocker run --rm serafinframework/nodejs <command>
bashdocker exec -ti <container_name> sh
dev 镜像标签的容器允许运行bash甚至zsh shell(推荐)。只需将sh替换为所需的shell即可。
运行包含本地项目的容器:
bashdocker run --name <my_project> -v .:/srv -p 80:80 -p 5858:5858 serafinframework/nodejs-dev
- 端口80用于提供HTTP内容
- 端口5859可映射以附加调试器
可选地,可挂载其他卷以简化开发:
docker-compose.yml配置示例
yamlversion: "2" services: csl: image: serafinframework/nodejs-dev ports: - "80:80" - "5858:5859" links: - memcached - dynamodb volumes: - .:/srv - ~/.ssh/id_rsa:/home/node/.ssh/id_rsa:ro - ~/.gitconfig:/home/node/.gitconfig:ro - ~/.npmrc:/home/node/.npmrc:ro
容器入口点运行脚本startup.sh,该脚本附加调试器、运行容器命令,并读取可选环境变量以:
环境变量
TIMEZONE:可用于定义不同的时区BUILD:如果不为空,将根据以下环境变量从Git仓库获取并构建项目:
GIT_BUCKET:git项目仓库GIT_BRANCH(可选):默认master,可指定其他git分支BUILD(可选):如果值为dev,项目将进行版本控制并包含NPM开发包示例
bashdocker run -ti -v ~/.ssh/id_rsa:/home/node/.ssh/id_rsa -v ~/.npmrc:/home/node/.npmrc -e TIMEZONE='America/Montreal' -e BUILD=1 -e GIT_BUCKET=git@bitbucket.org:serafinframework/myproject.git GIT_BRANCH=test serafinframework/nodejs
镜像包含可执行文件*/opt/docker/startup-timezone.sh*,可在运行时用于设置容器时区。时区必须对应Linux tzdata时区名称,例如America/Montreal。
镜像包含可执行文件*/opt/docker/build.sh*,可在运行时用于从Git源获取项目。可能需要共享id-rsa密钥以访问仓库。
获取源代码后,将运行npm install命令。如果设置了开发者选项,生成的项目将进行版本控制,并部署NPM开发包;否则,项目将为生产版本。
使用方法
bash/opt/docker/build.sh [-dh] <git仓库> [<git分支>]

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务