https://github.com/fspoettel/arkhamdb-docker
docker compose wrapper to quickly run a local arkhamdb instance.
https://github.com/fspoettel/arkhamdb-docker
arkham-horror arkham-horror-lcg
Last synced: about 1 year ago
JSON representation
docker compose wrapper to quickly run a local arkhamdb instance.
- Host: GitHub
- URL: https://github.com/fspoettel/arkhamdb-docker
- Owner: fspoettel
- Created: 2023-06-11T12:59:42.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2025-01-05T00:12:43.000Z (over 1 year ago)
- Last Synced: 2025-01-28T22:31:31.333Z (over 1 year ago)
- Topics: arkham-horror, arkham-horror-lcg
- Language: Dockerfile
- Homepage:
- Size: 15.6 KB
- Stars: 4
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# arkhamdb-docker
`docker compose` wrapper to quickly run a local [arkhamdb](https://arkhamdb.com/) instance.
# Getting started
> **Warning**
> This is tailored to previewing the card database and images. This is not a production-ready setup, nor does it currently support developing arkhamdb itself.
1. install [docker](https://docs.docker.com/engine/install/) and [git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git).
2. run the following commands in a shell. If your system does not have `make` installed (e.g. on Windows), copy the referenced commands from the `Makefile` and run them manually instead when approriate.
```sh
# 1. clone this git repository to a folder and change to it.
git clone https://github.com/fspoettel/arkhamdb-docker && cd arkhamdb-docker
# 2. Clone arkhamdb and arkhamdb-json-data repositories.
# If you want to use a fork of the data repository, adjust the command to use your fork.
make setup
# 3. Start the containers in one terminal.
docker compose up
# 4. In a second terminal, initialize the database.
# You only need to do this once on first run.
make init-db
# 5. Import card data.
make import-cards
```
✨ You can now access the application at `http://localhost:8000`.
## Updating cards & images while running
The folders `/arkhamdb-json-data` and `/images` are mounted into the running docker container.
Changes to files in the images folder will be visible in the _"Browse"_ view immediately.
In order to update card data or images in the deck builder view, run `make import-cards` again after making changes and confirm the new card data version in the application UI.
## Accessing the internal database
```
type: mysql or mariadb
host: 127.0.0.1
port: 3307
database: symfony
user: symfony_user
password: symfony_password
```
## Creating a user login
1. Register via the application user interface.
2. Connect to the database with a SQL editor (e.g. [TablePlus](https://tableplus.com/)), using the credentials referenced above.
3. Navigate to the `users` table and find the record pointing to the user you registered.
4. Set the `enabled` field to `1`.
5. You can now login.
## Creating an OAuth app
If you need to develop against ArkhamDB's OAuth gateway, you can create an oauth client by running the following command. By default, this will create a client with `grant_types` set to `["authorization_code", "refresh_token"]`.
```sh
make redirect_uri="" name="" create-oauth-app
```
The command will output the `client_id` and `client_secret`.
Authorization endpoint: `http://localhost:8000/oauth/v2/auth`