This repository has been archived on 2022-08-14. You can view files and clone it, but cannot push or open issues or pull requests.
outline/docs/SERVICES.md

46 lines
1.4 KiB
Markdown

# Backend Services
Outline's backend is split into several distinct [services](../server/services)
that combined form the application. When running the official Docker container
it will run all of the production services by default.
You can choose which services to run through either a comma separated CLI flag,
`--services`, or the `SERVICES` environment variable. For example:
```bash
yarn start --services=web,worker
```
## Admin
Currently this service is only used in development to view and debug the queues.
It is hosted at `/admin`.
## Web
The web server hosts the Application and API, as such this is the main service
and must be run by at least one process.
## Websockets
The websocket server is used to communicate with the frontend, it can be ran on
the same box as the web server or separately.
## Worker
At least one worker process is required to process the [queues](../server/queues).
## Collaboration
The service is in alpha and as such is not started by default. It must run
separately to the `websockets` service, and will not start in the same process.
The `COLLABORATION_URL` must be set to the publicly accessible URL when running
the service. For example, if the app is hosted at `https://docs.example.com` you
may use something like: `COLLABORATION_URL=wss://docs-collaboration.example.com`.
Start the service with:
```bash
yarn start --services=collaboration
```