##// END OF EJS Templates
docs: updated few instructions
docs: updated few instructions

File last commit:

r280:bae06fe2
r280:bae06fe2
Show More
index.rst
122 lines | 2.7 KiB | text/x-rst | RstLexer

Welcome to RhodeCode rcstack documentation!

RhodeCode rcstack is a multi-node highly-scalable setup to run RhodeCode services. It consists of all RhodeCode services required with additionally Edge Router(Traefik with optional SSL) and Metrics Stack (Prometheus, Loki, Grafana) in single environment using Docker.

Using a docker-compose this setup creates following services for RhodeCode:

Router (mandatory to run):

./rcstack router --help

Traefik aka Edge Router is responsible for handling all outgoing and incoming traffic to whole stack. It can do SSL termination, and handle SSL traffic with certificate management.

Traefik listens to few defaults ports and handles all incoming/outgoing traffic to the stack

  • 80 (HTTP)
  • 443 (HTTPS)
  • 9443 (SSH for RhodeCode traffic)
  • 3100 (Loki log aggregation)

Services (mandatory to run):

./rcstack services --help
  • Database (defaults to PostgreSQL) Optionally can be replaced by MySQL, or own external database if needed.
  • Redis, acts as cache and queue exchange
  • ChannelStream - live websocket communications
  • Elasticsearch (full text search backend)
  • Nginx (static file service) proxy serving RhodeCode static files

RhodeCode (mandatory to run):

./rcstack rhodecode --help
  • RhodeCode CE/EE web app
  • VCSServer for GIT/SVN/HG support
  • SSH server for cloning over SSH
  • SVN webserver for SVN protocol support
  • Celery workers for asynchronous tasks
  • Celery beat for scheduler and automation tasks

Metrics (Optional)

./rcstack metrics --help
  • Loki, logs aggregation
  • Grafana, metrics Dashboard
  • Prometheus, metrics time-series
  • Statsd-exporter - statsd to Prometheus bridge
  • Node-exporter - machine stats and usage
  • Promtail - log scraping