Running locally with Docker
How to run locally with Docker.
Authgear is available as a Docker image. It depends on PostgreSQL and Redis. To run it locally, the simplest way is to use docker-compose.
Let's get started with creating a new directory.
First, we need to create authgear.yaml and authgear.secrets.yaml. Authgear itself is a CLI program capable of generating a minimal configuration file.
Run the following command to generate minimal authgear.yaml and authgear.secrets.yaml:
docker run --rm -it -w "/work" -v "$PWD:/work" quay.io/theauthgear/authgear-server authgear init
authgear.yaml and authgear.secrets.yaml are generated in your working directory.
The next step is to create docker-compose.yaml to setup PostgreSQL, Redis, and Authgear.
You can start with the following docker-compose.yaml:
# Remember to replace the latest tag with the exact version you would like to use!
The three services run in the same network. We have to ensure Authgear can connect to PostgreSQL and Redis.
Check authgear.secrets.yaml and see if it looks like the following:
- key: db
database_url: postgres://postgres:[email protected]:5432/postgres?sslmode=disable
- key: redis
# Other entries that are randomly generated.
# They are not listed here because they will be different.
Authgear depends on them so they have to be started first.
docker-compose up -d db redis
Run the database migration:
docker-compose run --rm authgear authgear migrate up
Run everything with: