The below quickstart assumes you're running on Mac or Linux. Windows will be different.
Make sure Docker is installed and setup your local environment:
# Create a directory on your computer for Docker files
mkdir -p ~/docker-apps/maybe
cd ~/docker-apps/maybe
# Download the sample docker-compose.yml file from the Maybe Github repository
curl -o docker-compose.yml https://raw.githubusercontent.com/maybe-finance/maybe/main/docker-compose.example.yml
# Create an .env file (make sure to fill in empty variables manually)
cat << EOF > .env
# Use "openssl rand -hex 64" to generate this
SECRET_KEY_BASE=
# Can be any value, set to what you'd like
POSTGRES_PASSWORD=
EOFMake sure to generate your SECRET_KEY_BASE value and save the .env file.
Then you're ready to run the app, which will be available at
http://localhost:3000 in your browser:
docker-compose up -dLastly, go to http://localhost:3000 in your browser, create a new
account, and you're ready to start tracking your finances!
- Install Docker Engine by following the official guide
- Start the Docker service on your machine
- Create a new directory on your machine (we suggest something like
$HOME/docker-apps/maybe) - Create a
docker-compose.ymlfile (we suggest using our example if you're new to self-hosting and Docker) - Create a
.envfile and add the required variables. Currently,SECRET_KEY_BASEis the only required variable, but you can take a look at our .env.example file to see all available options.
- Run
docker-compose up -dto start the maybe app in detached mode. - Access the Maybe app by navigating to http://localhost:3000 in your web browser.
The mechanism that updates your self-hosted Maybe app is the GHCR (Github
Container Registry) Docker image that you see in the docker-compose.yml file:
image: ghcr.io/maybe-finance/maybe:latestWe recommend using one of the following images, but you can pin your app to whatever version you'd like ( see packages):
ghcr.io/maybe-finance/maybe:latest(latest commit)ghcr.io/maybe-finance/maybe:stable(latest release)
By default, your app will NOT automatically update. To update your self-hosted app, you must run the following commands:
docker-compose pull # This pulls the "latest" published image from GHCR
docker-compose up -d # Restarts the appIf you'd like to pin the app to a specific version or tag, all you need to do is
edit the docker-compose.yml file:
image: ghcr.io/maybe-finance/maybe:stableThis section will provide troubleshooting tips and solutions for common issues encountered during deployment. Check back later for updates!