Skip to content

๐Ÿณ Install with Docker โ€‹

The fastest way to get KitchenAsty running. Docker Compose starts the API server, admin dashboard, storefront, and PostgreSQL in one command.

1. ๐Ÿ“ฅ Clone the Repository โ€‹

bash
git clone https://github.com/kitchenasty/kitchenasty.git
cd kitchenasty

2. โš™๏ธ Configure Environment โ€‹

bash
cp packages/server/.env.example packages/server/.env

Edit packages/server/.env and set at minimum:

dotenv
DATABASE_URL=postgresql://kitchenasty:kitchenasty@postgres:5432/kitchenasty
JWT_SECRET=your-random-secret-here
CORS_ORIGINS=http://localhost:5173,http://localhost:5174

See Environment Variables for the full reference.

3. ๐Ÿš€ Start Services โ€‹

bash
docker compose up --build

This starts:

ServiceURL
API Serverhttp://localhost:3000
Admin Dashboardhttp://localhost:5173
Storefronthttp://localhost:5174
PostgreSQLlocalhost:5432

4. ๐Ÿ—„๏ธ Run Migrations & Seed โ€‹

In a separate terminal, run the database setup inside the server container:

bash
docker compose exec server npx prisma migrate deploy --schema ../../prisma/schema.prisma
docker compose exec server npx tsx ../../prisma/seed.ts

5. โœ… Access the Platform โ€‹

๐Ÿ› ๏ธ Admin Dashboard โ€‹

๐Ÿ›๏ธ Storefront โ€‹

๐Ÿ“– API Documentation โ€‹

๐Ÿ›‘ Stopping โ€‹

bash
docker compose down

To also remove the database volume:

bash
docker compose down -v

๐Ÿ”„ Rebuilding โ€‹

After pulling changes:

bash
docker compose up --build

๐Ÿ” Troubleshooting โ€‹

๐Ÿšง Port conflicts โ€‹

If ports 3000, 5173, 5174, or 5432 are in use, edit docker-compose.yml and change the host port mappings (left side of the colon).

๐Ÿ”Œ Database connection refused โ€‹

The server waits for PostgreSQL to be healthy before starting. If you still see connection errors, check that the DATABASE_URL in your .env uses postgres (the Docker service name) as the host, not localhost.