docker run -d --name mtgc-sync-server \
-p 0.0.0.0:8080:8080 \
-v mtgc-sync-data:/data \
-e MTGC_PUBLIC_URL=http://localhost:8080 \
garrettmills/mtgc:latest
docker exec -it mtgc-sync-server mtgc-server user add <username>
Bind mounts have to be owned by 10001:10001 before the container starts
Configuration via env vars:
| Variable | Default | |
|---|---|---|
MTGC_PUBLIC_URL | (required) | The https:// address users will reach the server at |
MTGC_BIND | 0.0.0.0:8080 | Listen address |
MTGC_DB | mtgc-server.db | SQLite database path |
MTGC_LOCAL_AUTH | true | Username/password accounts |
MTGC_OIDC_ISSUER | — | Turns on single sign-on, e.g. https://auth.example.com/application/o/mtgc/ |
MTGC_OIDC_CLIENT_ID, MTGC_OIDC_CLIENT_SECRET | — | A confidential client, with redirect URI ${MTGC_PUBLIC_URL}/auth/callback |
MTGC_OIDC_NAME | single sign-on | Shown on the button: "Sign in with …" |
MTGC_OIDC_SCOPES | openid email profile | |
MTGC_ALLOWED_EMAILS | — | Comma-separated allow list of verified emails |
Local accounts are managed from the command line; there's no sign-up page:
mtgc-server user add <name> [--display-name <text>] # prompts for a password
mtgc-server user passwd <name>
mtgc-server user remove <name> --yes # also deletes their server-side library
mtgc-server user list
Content type
Image
Digest
sha256:6cef7c6d8…
Size
33.6 MB
Last updated
7 days ago
docker pull glmdev/mtgc