本项目使用 Docker Compose 在远程开发环境中启动 MySQL 和 Redis,并使用 Koa 提供 API 服务。
npm install
npm start 会通过 docker compose 启动 MySQL 和 Redis,并执行 mysql-init 目录下的 init.sql 脚本,初始化数据库。 并且启动 Koa 服务,监听 3000 端口,使用 nodemon 监听文件变化,自动重启服务。
npm start
npm start
curl http://localhost:3000
curl http://localhost:3000/users
curl http://localhost:3000/visits
.
├── docker-compose.yml
├── Dockerfile
├── .env.example
├── .gitignore
├── package.json
├── README.md
├── src
│ └── app.js
└── mysql-init
└── init.sql
docker-compose.yml
: Docker Compose 配置文件Dockerfile
: Node.js 应用的 Docker 配置文件.env.example
: 环境变量示例文件src/index.js
: 主应用程序文件mysql-init/init.sql
: MySQL 初始化脚本GET /
: 欢迎消息GET /users
: 获取用户列表(从 MySQL)GET /visits
: 获取并增加访问计数(使用 Redis)GET /init-db
: 初始化数据库(执行 SQL 脚本)配置文件位于 .cnb.yml
,使用 cnb 云原生开发 远程开发。
$:
# vscode 事件:专供页面中启动远程开发用
vscode:
- docker:
# 自定义镜像作为开发环境,可以指定您需要的镜像
image: node:20
services:
- vscode
- docker