---
title: "Deploy romanovich-school-marketplace"
description: "Pet project romanovich.school. Microservices, Postgres, Kafka, Redis"
category: "Starters"
url: https://railway.com/deploy/romanovich-school-marketplace
---

# Deploy romanovich-school-marketplace

Pet project romanovich.school. Microservices, Postgres, Kafka, Redis

**[Deploy romanovich-school-marketplace on Railway](https://railway.com/template/romanovich-school-marketplace)**

Machine-readable deploy manifest (JSON, validated by TemplateCI): https://railway.com/deploy/romanovich-school-marketplace/manifest.json

- **Creator:** Artem Romanovich's Projects
- **Category:** Starters

## Template content

### gateway https://devicons.railway.app/gola

- **Image:** traefik/whoami:v1.12.0
- **Health check:** /healthz
- **Public domain:** Yes

### kafka https://romanovich.school/tech/apachekafka.svg

- **Image:** apache/kafka-native:3.9.2

### orders-service https://devicons.railway.app/golang

- **Image:** traefik/whoami:v1.12.0

### redis https://devicons.railway.app/redis

- **Image:** redis:7-alpine

### catalog-service https://devicons.railway.app/gol

- **Image:** traefik/whoami:v1.12.0

## Documentation

# Deploy and Host romanovich-school-marketplace on Railway

Marketplace v4 — финальный пет-проект школы [romanovich.school](https://romanovich.school): три Go-сервиса (gateway, catalog, orders), gRPC между ними, Kafka с transactional outbox, Redis-кэш и Postgres в Neon. Шаблон поднимает инфраструктуру, код подключаешь свой.

## About Hosting romanovich-school-marketplace

Шаблон создаёт пять сервисов в одном проекте: Kafka в KRaft-режиме на persistent volume, Redis и три заглушки под твои сервисы, уже связанные приватной сетью и reference-переменными. Свой репозиторий подключаешь одним файлом `.railway/railway.ts` через `railway config apply`, вставляешь три строки Neon Postgres и получаешь стек, который пересобирается на каждый push: ветка `develop` в dev-окружение, `main` в прод. Ни одного адреса в коде, только переменные. Всё укладывается в бесплатный триал: 30 дней, карта не нужна.

## Common Use Cases

- Пет-проект уровня Middle: распределённая система вместо очередного CRUD.
- Портфолио с живым продом: ссылка на работающий сервис в резюме.
- Полигон для отказов: останови Kafka, Redis или catalog и посмотри, что переживёт система.

## Dependencies for romanovich-school-marketplace Hosting

- Apache Kafka 3.9 (KRaft, native-сборка, ~180 МБ RAM) с томом для данных.
- Redis 7 для cache-aside.
- Neon Postgres: три базы (`auth`, `catalog`, `orders`) вне Railway.
- Go 1.26, gRPC, protobuf; Railway CLI для применения IaC.

### Implementation Details

Три частые проблемы настройки Kafka на Railway уже учтены в шаблоне: `KAFKA_ADVERTISED_LISTENERS` через `RAILWAY_PRIVATE_DOMAIN`, `KAFKA_LOG_DIRS` в поддиректории тома (в корне лежит `lost+found`) и `RAILWAY_RUN_UID=0` для non-root образа. Соседи получают адреса через `${{kafka.KAFKA_BROKERS}}`, `${{redis.REDIS_URL}}` и приватные домены. После деплоя шаблона:

```bash
railway link && railway config apply
```

## Why Deploy romanovich-school-marketplace on Railway?

Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.

By deploying romanovich-school-marketplace on Railway, you are one step closer to supporting a complete full-stack application with minimal burden. Host your servers, databases, AI agents, and more on Railway.

## Similar templates

- [open-excalidraw](https://railway.com/deploy/open-excalidraw) — Self-hostable collaborative drawing built on Excalidraw
- [caring-vibrancy](https://railway.com/deploy/caring-vibrancy) — Deploy and Host caring-vibrancy with Railway
- [Appsmith](https://railway.com/deploy/appsmith-1) — Low-code platform for internal tools, dashboards, and admin panels.

Open this page in a browser: https://railway.com/deploy/romanovich-school-marketplace
