chore(dev): 改用 Compose named volume

This commit is contained in:
2026-05-11 21:58:23 +08:00
parent 158d4007e4
commit 8824db8019
3 changed files with 14 additions and 9 deletions
+4 -1
View File
@@ -1,4 +1,4 @@
FROM oven/bun:1.3.13 AS build FROM oven/bun:1.3.13 AS source
WORKDIR /app WORKDIR /app
@@ -6,6 +6,9 @@ COPY package.json bun.lock ./
RUN bun install --frozen-lockfile RUN bun install --frozen-lockfile
COPY . . COPY . .
FROM source AS build
RUN bun run build \ RUN bun run build \
&& bun run compile \ && bun run compile \
&& mv out/server-* out/server && mv out/server-* out/server
+8 -6
View File
@@ -4,7 +4,7 @@ services:
ports: ports:
- "3306:3306" - "3306:3306"
volumes: volumes:
- ./volumes/mysql/data:/var/lib/mysql - mysql_data:/var/lib/mysql
environment: environment:
MYSQL_ROOT_PASSWORD: root MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: battery_soh MYSQL_DATABASE: battery_soh
@@ -17,17 +17,16 @@ services:
retries: 20 retries: 20
seed: seed:
image: oven/bun:1.3.13 build:
context: .
target: source
restart: "no" restart: "no"
depends_on: depends_on:
db: db:
condition: service_healthy condition: service_healthy
volumes:
- .:/app
environment: environment:
- DATABASE_URL=mysql://battery:battery@db:3306/battery_soh - DATABASE_URL=mysql://battery:battery@db:3306/battery_soh
command: [ "sh", "-lc", "bun install --frozen-lockfile && bun run seed" ] command: [ "bun", "run", "seed" ]
working_dir: /app
app: app:
build: . build: .
@@ -38,3 +37,6 @@ services:
- "3000:3000" - "3000:3000"
environment: environment:
- DATABASE_URL=mysql://battery:battery@db:3306/battery_soh - DATABASE_URL=mysql://battery:battery@db:3306/battery_soh
volumes:
mysql_data:
+2 -2
View File
@@ -1,6 +1,6 @@
import { reset } from 'drizzle-seed'
import { drizzle } from 'drizzle-orm/mysql2'
import { datetime, index, int, mysqlTable, tinyint, varchar } from 'drizzle-orm/mysql-core' import { datetime, index, int, mysqlTable, tinyint, varchar } from 'drizzle-orm/mysql-core'
import { drizzle } from 'drizzle-orm/mysql2'
import { reset } from 'drizzle-seed'
import mysql from 'mysql2/promise' import mysql from 'mysql2/promise'
type SeedRow = { type SeedRow = {