Перейти к содержимому

Шаблон · Бизнес-приложения

Saleor

Headless GraphQL e-commerce platform (API + Celery worker) with Postgres and Redis.

Развернуть на Skiffly

Откроется панель с уже выбранным шаблоном. Если вы у нас впервые, войдите через GitHub; бесплатный тариф не требует карты.

  • Postgrespostgres:17
  • Redisredis:7-alpine
  • Saleorghcr.io/saleor/saleor:3.21
  • Saleor Workerghcr.io/saleor/saleor:3.21
Документация проекта

Что будет развёрнуто

4 сервиса в выбранном вами окружении, в приватной сети проекта.

Об этом шаблоне

ghcr.io/saleor/saleor:3.21 API with migrations on start and a Celery worker, PostgreSQL 17, Redis. Dashboard is a separate app (saleor-dashboard) — point it at /graphql/.

После деплоя

Create the first superuser: python3 manage.py createsuperuser inside the Saleor container.

Postgres

Образ: postgres:17

  • Порт 5432/tcp
  • том 10 ГБ в /var/lib/postgresql/data
  • 1 vCPU · 1 GB

Redis

Образ: redis:7-alpine

  • Порт 6379/tcp
  • том 2 ГБ в /data
  • 0.5 vCPU · 512 MB

redis-server --appendonly yes --dir /data

Saleor

Образ: ghcr.io/saleor/saleor:3.21

  • Порт 8000/http
  • Публичный домен с TLS
  • том 5 ГБ в /app/media
  • 1 vCPU · 1 GB
  • /health/

python3 manage.py migrate --noinput && uvicorn saleor.asgi:application --host 0.0.0.0 --port 8000 --workers 2 --lifespan off --ws none --no-server-header --no-access-log --timeout-keep-alive 35

Saleor Worker

Образ: ghcr.io/saleor/saleor:3.21

  • 1 vCPU · 1 GB

celery -A saleor --app=saleor.celeryconf:app worker --loglevel=info -B

Переменные

Сгенерированные секреты никогда не покидают платформу; ссылки резолвятся в приватной сети. Всё, что отмечено как обязательное, запрашивается при деплое.

Postgres

ИмяЗначение
POSTGRES_USERpostgresSuperuser name
POSTGRES_PASSWORDгенерируется (password)Generated at deploy
POSTGRES_DBsaleorDatabase created on first start
PGDATA/var/lib/postgresql/data/pgdata
DATABASE_URLpostgresql://${{self.POSTGRES_USER}}:${{self.POSTGRES_PASSWORD}}@${{self.SKIFFLY_PRIVATE_DOMAIN}}:5432/${{self.POSTGRES_DB}}Connection string on the private network

Redis

ИмяЗначение
REDIS_URLredis://${{self.SKIFFLY_PRIVATE_DOMAIN}}:6379Private network only, no auth

Saleor

ИмяЗначение
DATABASE_URL${{Postgres.DATABASE_URL}}
CELERY_BROKER_URL${{Redis.REDIS_URL}}/1
REDIS_URL${{Redis.REDIS_URL}}/0
SECRET_KEYгенерируется (secret)
RSA_PRIVATE_KEYOptional PEM for JWT signing
ALLOWED_HOSTS*
ALLOWED_CLIENT_HOSTS*
PUBLIC_URLhttps://${{self.SKIFFLY_PUBLIC_DOMAIN}}
DEFAULT_FROM_EMAILnoreply@example.com
DEBUGFalse
DEFAULT_CHANNEL_SLUGdefault-channel
HTTP_IP_FILTER_ENABLEDFalse

Saleor Worker

ИмяЗначение
DATABASE_URL${{Postgres.DATABASE_URL}}
CELERY_BROKER_URL${{Redis.REDIS_URL}}/1
REDIS_URL${{Redis.REDIS_URL}}/0
SECRET_KEY${{Saleor.SECRET_KEY}}
RSA_PRIVATE_KEYOptional PEM for JWT signing
ALLOWED_HOSTS*
ALLOWED_CLIENT_HOSTS*
PUBLIC_URL${{Saleor.PUBLIC_URL}}
DEFAULT_FROM_EMAILnoreply@example.com
DEBUGFalse
DEFAULT_CHANNEL_SLUGdefault-channel
HTTP_IP_FILTER_ENABLEDFalse

Кнопка деплоя для вашего README

Добавьте ссылку на деплой в один клик в свой репозиторий или документацию. Два варианта: для светлого и тёмного фона.

Развернуть на SkifflyРазвернуть на Skiffly
Markdown · Светлый фон
[![Развернуть на Skiffly](https://skiffly.dev/button.svg)](https://skiffly.dev/templates/saleor)
Markdown · Тёмный фон
[![Развернуть на Skiffly](https://skiffly.dev/button-dark.svg)](https://skiffly.dev/templates/saleor)
HTML
<a href="https://skiffly.dev/templates/saleor"><img src="https://skiffly.dev/button.svg" alt="Развернуть на Skiffly" height="32"></a>

Разверните Saleor в один клик

Тома, секреты и домен уже настроены. Работает на нодах в ЕС, оплата поминутно с предоплаченного баланса.