4
5
Login
Code
Issues
Pull requests
Events
Packages
236d06234a824bd85bda5119e205266fc0bb7157
README
MIT license

Node.js Koa Docker MySQL Redis 远程开发

本项目使用 Docker Compose 在远程开发环境中启动 MySQL 和 Redis,并使用 Koa 提供 API 服务。

快速开始

  1. 安装依赖
npm install
  1. 启动项目

npm start 会通过 docker compose 启动 MySQL 和 Redis,并执行 mysql-init 目录下的 init.sql 脚本,初始化数据库。 并且启动 Koa 服务,监听 3000 端口,使用 nodemon 监听文件变化,自动重启服务。

npm start
  1. 访问 API
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 初始化脚本

API 端点

  • GET /: 欢迎消息
  • GET /users: 获取用户列表(从 MySQL)
  • GET /visits: 获取并增加访问计数(使用 Redis)
  • GET /init-db: 初始化数据库(执行 SQL 脚本)

远程开发配置

配置文件位于 .cnb.yml,使用 cnb 云原生开发 远程开发。

$:
  # vscode 事件:专供页面中启动远程开发用
  vscode:
    - docker:
        # 自定义镜像作为开发环境,可以指定您需要的镜像
        image: node:20
      services:
        - vscode
        - docker

许可

MIT License

About

使用 Docker Compose 在远程开发环境中启动 MySQL 和 Redis,并使用 Koa 提供 API 服务。

example

Release
0

Tag
0

Sponsor

Language
Markdown42.1%
JavaScript34.6%
Dockerfile8.9%
SQL4.7%
Others9.7%