Spree Commerce на Pethost в один клік
Платформа електронної комерції з відкритим кодом: товари, замовлення, платежі й headless API для будь-якої вітрини
Що відбудеться
- Ви входите в Pethost або створюєте акаунт — з ключем доступу, через GitHub або Google.
- Машини ще немає? Ви обираєте тариф, і ми готуємо машину для вас. Посилання чекає у вашому браузері, доки машина не буде готова.
- Вікно «Новий проєкт» відкривається на цьому застосунку. Ви заповнюєте те, що він просить, і натискаєте «Створити проєкт»: Електронна пошта, Пароль адміністратора.
- За хвилину-дві застосунок працює за власною адресою з HTTPS. Його секрети створюються випадково, а дані потрапляють у щонічний бекап.
- Це проєкт як будь-який інший: його compose.yaml, .env, логи й термінал — у панелі, а ваш агент може його змінити, відкотити або відновити.
Перші кроки
Увійдіть на https://spree.sam.pethost.app/admin із поштою й паролем адміністратора, які ви вказали: Spree створює цього адміністратора під час першого запуску. Там налаштовуються товари, способи оплати й доставка.
Що запускається
Шаблон — це цей compose.yaml і змінні, які він записує в .env проєкту. Pethost запускає файл так, як його написано.
services:
spree:
image: ghcr.io/spree/spree:5.6.1
restart: unless-stopped
environment:
DATABASE_URL: postgres://spree:${POSTGRES_PASSWORD}@postgres:5432/spree_production
SECRET_KEY_BASE: ${SECRET_KEY_BASE}
ACTIVE_RECORD_ENCRYPTION_PRIMARY_KEY: ${ENCRYPTION_PRIMARY_KEY}
ACTIVE_RECORD_ENCRYPTION_DETERMINISTIC_KEY: ${ENCRYPTION_DETERMINISTIC_KEY}
ACTIVE_RECORD_ENCRYPTION_KEY_DERIVATION_SALT: ${ENCRYPTION_KEY_DERIVATION_SALT}
SPREE_HOST: ${HOST}
RAILS_HOST: ${HOST}
# The seed makes the first admin from these instead of a stock account.
ADMIN_EMAIL: ${ADMIN_EMAIL}
ADMIN_PASSWORD: ${ADMIN_PASSWORD}
volumes:
- storage:/rails/storage
depends_on:
postgres:
condition: service_healthy
postgres:
image: postgres:18-alpine
restart: unless-stopped
environment:
POSTGRES_USER: spree
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
POSTGRES_DB: spree_production
volumes:
- db:/var/lib/postgresql
healthcheck:
test: ["CMD-SHELL", "pg_isready -U spree -d spree_production"]
interval: 5s
timeout: 5s
retries: 10
volumes:
storage:
db: