# "Finish setting up Crewtavo" or "Crewtavo is starting up"

> What each message on your Crewtavo's setup screen means, such as "Crewtavo can't reach its database", and the steps to fix it on Railway or Docker.

Instead of an error, your Crewtavo's address shows a setup screen when something isn't ready. It checks again by itself and goes away once everything is running, or you can choose **Check again**. Find the message you see below.

Most fixes happen in your project on Railway: sign in to [Railway](https://railway.com), open the project called **Crewtavo**, and click a service's box to open it.

## "Crewtavo is starting up"

Nothing is wrong. It's setting up its database, and the first start takes a minute or two. The page moves on by itself.

## "The database or one of its helper services didn't start in time."

1. In Railway, check that every service (`db`, `auth`, `rest`, `storage`) says **Active**. If one has crashed, open it and choose **Redeploy**.
2. Then open the **crewtavo** service and choose **Redeploy**.

With Docker: in the Crewtavo folder, run `docker compose --env-file .env.instance ps` to see what's running, then `npm run instance` to start anything that stopped.

## "Crewtavo can't reach its database."

Same fix as above: check every service is **Active**, redeploy any that crashed, then redeploy **crewtavo**.

## "Crewtavo can't reach its sign-in and data services."

Same fix: check that `auth`, `rest` and `storage` are **Active**, redeploy any that crashed, then redeploy **crewtavo**.

## "Crewtavo couldn't sign in to its database."

The database password was changed after the first start.

1. In Railway, open the **db** service's **Variables** and put back the original `POSTGRES_PASSWORD`. The other services read it from there.
2. Redeploy the **crewtavo** service.

With Docker: put the original `POSTGRES_PASSWORD` back in `.env.instance`, then run `npm run instance` again.

## "The database address Crewtavo was given isn't valid."

1. On the **crewtavo** service, open **Variables** and check `SUPABASE_DB_URL`. The template sets it; if it was edited, put the template's value back.
2. Redeploy the **crewtavo** service.

With Docker: the template's value is in `docker-compose.yml`.

## "Crewtavo's keys don't match its services."

Every service has to use the same `JWT_SECRET`. Make sure it matches on all of them, then redeploy them.

## "The database hasn't been set up yet."

Redeploy the **crewtavo** service. It sets up the database when it starts.

## "Crewtavo is running on its own, without its database and the services that come with it."

Only the app was deployed, not the rest of Crewtavo. Deploy Crewtavo with its [Railway template](https://railway.com/deploy/crewtavo?referralCode=pQ_v0d), which includes everything, or run `npm run instance` in the Crewtavo folder to start all five services with Docker.

## "Setting up the database failed."

This is a problem in Crewtavo itself, not in anything you did. The screen shows a short error message: send it to us in a [GitHub issue](https://github.com/jviars/crewtavo/issues). Once it's fixed, redeploy. Your data is safe: each step either finishes completely or not at all.

Source: https://crewtavo.com/docs/troubleshooting/finish-setting-up/ (last updated 2026-10-18)
