Skip to main content

Quick Start

This guide will help you set up a fully functional EverShop store in under 5 minutes using Docker.
This quickstart uses Docker for the fastest setup. For other installation methods, see the Installation Guide.

Prerequisites

Make sure you have Docker installed:

Docker Desktop

For macOS and Windows

Docker Engine

For Linux systems

Docker Compose

Usually included with Docker Desktop

Setup Your Store

1

Download Docker Compose File

Open your terminal and download the EverShop Docker Compose configuration:
curl -sSL https://raw.githubusercontent.com/evershopcommerce/evershop/main/docker-compose.yml > docker-compose.yml
This creates a docker-compose.yml file in your current directory.
2

Start EverShop

Launch EverShop and its PostgreSQL database:
docker compose up -d
Docker will:
  • Download the EverShop image (~500MB)
  • Download PostgreSQL 16 image
  • Create and configure the database
  • Start both services in the background
The first startup takes 2-3 minutes while the database initializes. Subsequent starts are much faster.
3

Verify Installation

Check that the containers are running:
docker compose ps
You should see two services running:
  • app - EverShop application (port 3000)
  • database - PostgreSQL 16 (port 5432)
View the application logs:
docker compose logs -f app
Look for a message indicating the server started successfully.
4

Access Your Store

Your EverShop store is now running! Open your browser:

Storefront

Customer-facing store at http://localhost:3000

Admin Panel

Admin dashboard at http://localhost:3000/admin

Admin Login

The Docker image comes with a default admin account for testing:
Email: [email protected]
Password: 123456
Security Notice: Change these default credentials before deploying to production! You can create a new admin user or change the password using the CLI.

First Steps

Now that your store is running, here’s what to do next:
1

Explore the Admin Panel

Log into the admin panel at http://localhost:3000/admin:
The dashboard shows:
  • Recent orders and sales
  • Revenue charts
  • Quick stats on products and customers
  • System notifications
2

Create Your First Product

Add a product to your catalog:
  1. Navigate to Catalog → Products in the admin sidebar
  2. Click Create New Product
  3. Fill in the product details:
    • Name and description
    • Price and SKU
    • Images
    • Categories
    • Inventory quantity
  4. Click Save to publish
Products support variants (size, color, etc.), custom attributes, and multiple images out of the box.
3

Configure Store Settings

Customize your store settings:
  1. Go to Settings → Store Information
  2. Set your store name, logo, and contact information
  3. Configure Settings → Tax for tax rates
  4. Set up Settings → Shipping methods and rates
  5. Enable payment methods in Settings → Payment
  • Store name and description
  • Contact email and phone
  • Store address
  • Logo and favicon
4

Test the Checkout Flow

Place a test order to verify everything works:
  1. Visit the storefront at http://localhost:3000
  2. Browse products and add items to cart
  3. Proceed to checkout
  4. Enter shipping information
  5. Select shipping method
  6. Choose payment method
  7. Complete the order
Use Stripe’s test card numbers for testing payments. See Stripe Testing for test card numbers.

Essential Commands

Here are the Docker commands you’ll use regularly:
# Start in background
docker compose up -d

# Start with logs visible
docker compose up

Managing Admin Users

Create additional admin users using the EverShop CLI:
1

Access Container

Connect to the EverShop container:
docker compose exec app sh
2

Create Admin User

Run the user creation command:
npm run user:create
Follow the prompts to enter:
  • Full name
  • Email address
  • Password (minimum 8 characters with letters and numbers)
3

Change Password

To change an existing admin password:
npm run user:changePassword
Enter the email address and new password.

Data Persistence

Your data is stored in a Docker volume and persists between container restarts:
docker-compose.yml
volumes:
  postgres-data:  # Database data persists here
Running docker compose down stops containers but preserves data. Use docker compose down -v to remove volumes and delete all data.

Development vs Production

This quickstart uses the production build. For development:
For active development with hot reloading:
# Clone the repository
git clone https://github.com/evershopcommerce/evershop.git
cd evershop

# Install dependencies
npm install

# Setup database
npm run setup

# Run in dev mode
npm run dev
Development mode includes:
  • Hot module replacement (HMR)
  • Unminified code for debugging
  • Webpack dev server
  • React Fast Refresh

Customization

Ready to customize your store?

Create Extensions

Add custom functionality with extensions

Customize Theme

Modify the look and feel of your store

GraphQL API

Build custom integrations with the API

Configuration

Deep dive into configuration options

Troubleshooting

If port 3000 is occupied, modify the docker-compose.yml:
services:
  app:
    ports:
      - 3001:3000  # Change left number to any available port
Then access your store at http://localhost:3001
Ensure the database container is running:
docker compose ps
View database logs:
docker compose logs database
Restart both services:
docker compose restart
Check for errors in the logs:
docker compose logs app
Common issues:
  • Port conflicts (change port in docker-compose.yml)
  • Insufficient disk space
  • Docker daemon not running
To start fresh with a clean database:
# Stop and remove containers and volumes
docker compose down -v

# Start fresh
docker compose up -d
This deletes all data including products, orders, and customers!

Next Steps

1

Learn the Architecture

Understand how EverShop works:
2

Customize Your Store

3

Get Help

Discord Community

Ask questions and get help from the community

GitHub Issues

Report bugs or request features

Documentation

Browse the full documentation

Twitter/X

Follow for updates and tips
Stuck or have questions? Join our Discord community where developers help each other succeed with EverShop!

Build docs developers (and LLMs) love