包含基本的node:23.11.1开发服务,内置阿里镜像、zsh、chromium、git等,默认入口文件为main.ts
FROM node:23.11.1
# 设置系统代理
# ENV http_proxy=http://host.docker.internal:7890
# ENV https_proxy=http://host.docker.internal:7890
# 替换为阿里云 Debian 源(bookworm 是 Debian 12 的代号)
RUN echo "deb http://mirrors.aliyun.com/debian bookworm main contrib non-free\n\
deb http://mirrors.aliyun.com/debian bookworm-updates main contrib non-free\n\
deb http://mirrors.aliyun.com/debian-security bookworm-security main contrib non-free" \
> /etc/apt/sources.list && \
apt-get update
# 安装oh-my-zsh
RUN apt install git zsh -y
RUN sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
## 设置工作目录
WORKDIR /app
# 拷贝项目文件
COPY package*.json ./
# 安装依赖
RUN npm i nrm -g
RUN nrm use taobao
RUN npm i pnpm -g
RUN npm i tsx -g
RUN npm i ts-node -g
RUN npm i ts-node-dev -g
RUN pnpm i
# 安装chromium浏览器
ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true
ENV PUPPETEER_DOWNLOAD_HOST=https://storage.googleapis.com
ENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium
RUN apt-get install -y chromium
# 安装项目依赖
CMD tsnd --respawn --cls main.ts
说明(安装项目依赖):latest为tsx方式启动;tsnd为ts-node-dev方式启动;cmd为没有任何入口启动命令,需要docker-compose.yaml中设置命令
docker-compose.yaml 推荐配置
services:
api:
image: zys8119/node
container_name: test
ports:
- 81:81
volumes:
- ./:/app
- ./node_modules:/app/node_modules #这里很重要
environment:
- https_proxy=
- http_proxy=
Content type
Image
Digest
sha256:01a507e5a…
Size
744.1 MB
Last updated
about 1 year ago
docker pull zys8119/node