Skip to content

docker compose wrapper to quickly run a local arkhamdb instance.

Notifications You must be signed in to change notification settings

fspoettel/arkhamdb-docker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

arkhamdb-docker

docker compose wrapper to quickly run a local arkhamdb 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 and 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.
# 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 <repo>/arkhamdb-json-data and <repo>/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), 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"].

make redirect_uri="<url>" name="<name>" create-oauth-app

The command will output the client_id and client_secret.

Authorization endpoint: http://localhost:8000/oauth/v2/auth

About

docker compose wrapper to quickly run a local arkhamdb instance.

Topics

Resources

Stars

Watchers

Forks