• Stars
    star
    640
  • Rank 70,324 (Top 2 %)
  • Language
  • License
    BSD 3-Clause "New...
  • Created almost 5 years ago
  • Updated 4 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

All Saleor services started from a single repository with docker-compose.

Saleor Platform

Run all Saleor services from one repository.

About

What is Saleor Platform?

Saleor Platform is the easiest way to start local development with all the major Saleor services:

Keep in mind this repository is for local development only and is not meant to be deployed in any production environment! If you're not a developer and just want to try out Saleor you can check our live demo.

Requirements

  1. Docker

How to clone the repository?

To clone the repository, run the following command

git clone https://github.com/saleor/saleor-platform.git

How to run it?

  1. We are using shared folders to enable live code reloading. Without this, Docker Compose will not start:

    • Windows/MacOS: Add the cloned saleor-platform directory to Docker shared directories (Preferences -> Resources -> File sharing).
    • Windows/MacOS: Make sure that in Docker preferences you have dedicated at least 5 GB of memory (Preferences -> Resources -> Advanced).
    • Linux: No action is required, sharing is already enabled and memory for the Docker engine is not limited.
  2. Go to the cloned directory:

cd saleor-platform
  1. Build the application:
docker compose build
  1. Apply Django migrations:
docker compose run --rm api python3 manage.py migrate
  1. Populate the database with example data and create the admin user:
docker compose run --rm api python3 manage.py populatedb --createsuperuser

Note that --createsuperuser argument creates an admin account for [email protected] with the password set to admin.

  1. Run the application:
docker compose up

Where is the application running?

Troubleshooting

How to solve issues with lack of available space or build errors after an update

Most of the time both issues can be solved by cleaning up space taken by old containers. After that, we build again whole platform.

  1. Make sure docker stack is not running
docker compose stop
  1. Remove existing volumes

Warning! Proceeding will remove also your database container! If you need existing data, please remove only services that cause problems! https://docs.docker.com/compose/reference/rm/

docker compose rm
  1. Build fresh containers
docker compose build
  1. Now you can run a fresh environment using commands from How to run it? section. Done!

Still no available space

If you are getting issues with lack of available space, consider pruning your docker cache:

Warning! This will remove:

  • all stopped containers
  • all networks not used by at least one container
  • all dangling images
  • all dangling build cache

More info: https://docs.docker.com/engine/reference/commandline/system_prune/

I've been warned

docker system prune

Issues with migrations after changing the versions - resetting the database

Please submit an issue ticket if you spot issues with database migrations during the version update.

When testing developer releases or making local changes, you might end up in a state where you would like to reset the database completely. Since its state is persisted in the mounted volume, you'll need to use a dedicated command.

Warning! This command will remove all data already stored in the database.

I've been warned

docker compose down --volumes db

How to run application parts?

  • docker compose up api worker for backend services only
  • docker compose up for backend and frontend services

Feedback

If you have any questions or feedback, do not hesitate to contact us via GitHub Discussions.

License

Disclaimer: Everything you see here is open and free to use as long as you comply with the license. There are no hidden charges. We promise to do our best to fix bugs and improve the code.

Some situations do call for extra code; we can cover exotic use cases or build you a custom e-commerce appliance.

Crafted with ❀️ by Saleor Commerce

[email protected]

More Repositories

1

saleor

Saleor Core: the high performance, composable, headless commerce API.
Python
20,676
star
2

storefront

Saleor Storefront built with React 18, Next.js 14, App Router, TypeScript, GraphQL, and Tailwind CSS.
TypeScript
983
star
3

saleor-dashboard

A GraphQL-powered, single-page dashboard application for Saleor.
TypeScript
832
star
4

saleor-storefront

A GraphQL-powered, NextJs-based, PWA storefront for Saleor. IMPORTANT: This project is [DEPRECATED] in favor of saleor/react-storefront soon to become our default demo and storefront starter pack.
TypeScript
768
star
5

saleor-sdk

Deprecated! See the announcement below. JavaScript/TypeScript SDK for building e-commerce experiences and checkouts with Saleor API.
TypeScript
129
star
6

saleor-docs

Saleor documentation.
JavaScript
106
star
7

apps

A central space for Saleor Apps, integrations, and the App Store πŸš€
TypeScript
105
star
8

macaw-ui

MacawUI: an official UI design kit for Saleor
TypeScript
100
star
9

cli

Command-line interface allowing interaction with Saleor Cloud environments.
TypeScript
69
star
10

saleor-app-template

Your boilerplate for new Saleor Apps. Batteries included.
TypeScript
62
star
11

app-sdk

SDK for building great Saleor Apps
TypeScript
46
star
12

saleor.io-learn

The Saleor Tutorial content. Learn how to create production-grade Saleor storefronts with React and Next.js. https://saleor.io/learn
39
star
13

saleor-app-payment-adyen

TypeScript
36
star
14

saleor-app-slack

TypeScript
29
star
15

saleor-next-starter

TypeScript
27
star
16

saleor-checkout

Migrated into a monorepo: https://github.com/saleor/react-storefront | The first fully open source and production-ready checkout experience.
TypeScript
22
star
17

saleor-app-klaviyo

TypeScript
20
star
18

auth-sdk

TypeScript
19
star
19

examples

Examples showing how to use the Saleor API.
15
star
20

saleor-app-payment-klarna

TypeScript
15
star
21

saleor-graphql-playground

TypeScript
12
star
22

saleor-app-payment-stripe

TypeScript
12
star
23

app-bridge

An official library for handling all communication between Saleor Dashboard and Saleor Apps.
TypeScript
12
star
24

create-saleor-app

TypeScript
10
star
25

app-examples

Common examples and patterns writing great Saleor apps
10
star
26

example-flutter

Saleor Example: Flutter Mobile App (Dart)
Dart
9
star
27

example-react-native-typescript

Saleor Example: React Native App in TypeScript using Expo
TypeScript
9
star
28

saleor-stellate

Stellate support for Saleor Commerce
TypeScript
9
star
29

saleor-email-templates

Example e-mail templates for Saleor
HTML
9
star
30

dummy-payment-app

Bare-bones app for testing Saleor's Transactions API
TypeScript
8
star
31

example-nextjs-app-router-starter

Saleor Example: Next.js 13 App Router Starter
TypeScript
8
star
32

requests-hardened

A library that overrides the default behaviors of the requests library, and adds new security features.
Python
8
star
33

saleor-app-search

TypeScript
6
star
34

tutorial-walkthrough

TypeScript
6
star
35

saleor-app-cms

TypeScript
6
star
36

example-nextjs-stripe

TypeScript
6
star
37

saleor-plugin-avatax-excise

Python
6
star
38

example-react-cra-typescript

Saleor Example: React App in TypeScript using Create React App (CRA)
TypeScript
5
star
39

saleor-avatax

TypeScript
5
star
40

saleor-app-invoices

Saleor integration for invoices generation
TypeScript
5
star
41

saleor-taxjar

TypeScript
5
star
42

saleor-admin-email-templates

Saleor admin email MJML templates: Reset password, export data, staff order
HTML
4
star
43

graphiql-plugin-collection

TypeScript
4
star
44

devtools-integration-tests

This is a hub for integration and e2e tests for CLI
TypeScript
4
star
45

saleor-app-data-importer

TypeScript
3
star
46

.github

3
star
47

example-react-nextjs-apollo-typescript

Saleor Example: React App in TypeScript with Apollo GraphQL using Next.js
TypeScript
3
star
48

json-schema-compiler

TypeScript
3
star
49

saleor-app-payment-template

Template Saleor payments apps are built from
TypeScript
3
star
50

saleor-app-emails-and-messages

TypeScript
2
star
51

saleor-app-klaviyo-old

TypeScript
2
star
52

digitalocean-1click

Shell
2
star
53

saleor-og

TypeScript
2
star
54

saleor-app-algolia

TypeScript
1
star
55

saleor-app-abandoned-checkouts

Example app built for documentation purposes
TypeScript
1
star
56

app-debug-bar

TypeScript
1
star
57

eslint-plugin-saleor-app

ESLint plugin with rules for Saleor Apps
TypeScript
1
star
58

marketplace-content

Marketplace content
1
star
59

example-auth-nextjs-pages-router

Saleor Example: Auth SDK with Next.js (Pages Router) in TypeScript
TypeScript
1
star
60

shellcheck-gha

Extracts and checks shell scripts in Github Workflows for potential issues using ShellCheck.
Python
1
star