-
Notifications
You must be signed in to change notification settings - Fork 0
Setup Instructions
The following are the setup instructions for the Ticket Auction Manager platform.
First you need to setup the server. The way I chose to do it is via Docker/Docker Compose. There are some options using environment variables.
docker run -v ./data.db:/tam/server/data.db dbob16/tam-server
Should host a very simple version of it with SQLite, which would only be recommended for one-at-a-time entry.
For a basic setup with a better database platform for simultaneous inserts, you can use the docker-compose.yml below:
services:
mariadb:
image: mariadb
container_name: mariadb-tam
environment:
MARIADB_USER: tam # For security and production sake, these three things can be changed.
MARIADB_PASSWORD: password # But you must change MYSQL_USER, MYSQL_PASSWORD, and MYSQL_DB
MARIADB_DATABASE: tam # to match
MARIADB_RANDOM_ROOT_PASSWORD: 1
volumes:
- ./db-data:/var/lib/mysql:Z
healthcheck:
test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"]
start_period: 10s
interval: 10s
timeout: 5s
retries: 3
restart: always
tam:
image: dbob16/tam-server
container_name: tam1
depends_on:
mariadb:
condition: service_healthy
restart: true
environment:
DB_TYPE: MYSQL
MYSQL_HOST: mariadb
MYSQL_USER: tam
MYSQL_PASSWORD: password
MYSQL_DB: tam
ports:
- '8000:80'
healthcheck:
test: curl --fail http://localhost:80/health/ || exit 1
interval: 2s
timeout: 5s
retries: 3
start_period: 5s
restart: always
# Enable ssl by uncommenting these following lines and putting nginx.crt (server certificate) and nginx.key (server key) in certs
# nginx:
# image: nginx
# container_name: nginx-tam-rp
# depends_on:
# mariadb:
# condition: service_healthy
# restart: true
# tam:
# condition: service_started
# restart: true
# ports:
# - "8443:8443"
# volumes:
# - ./nginx.conf:/etc/nginx/nginx.conf:ro
# - ./certs:/etc/nginx/certs
# healthcheck:
# test: ["CMD", "service", "nginx", "status"]
# interval: 5s
# timeout: 5s
# retries: 3
# start_period: 5s
# restart: always
# Enable restarting of unhealthy services by uncommenting the following lines:
# autoheal:
# restart: always
# image: willfarrell/autoheal
# container_name: autoheal
# environment:
# - AUTOHEAL_CONTAINER_LABEL=all
# volumes:
# - /var/run/docker.sock:/var/run/docker.sockA video on how to do this is linked below.
Download and extract the client version. Double click or launch the TAM Client file.
Clicking the Settings button should open up the settings dialog. From there you can input the base url which is typically one of the following:
- For plaintext (HTTP):
http://hostname_or_ip:8000/
- For encrypted (HTTPS):
https://hostname_or_ip:8443/
If you setup an API_PW in the environment section of tam on your docker-compose.yml, you may enter that value into the API_PW box. To be able to reference it later, it's also a good idea to put a name or some sort of identifier in the Computer Name box as well. Click Generate API Key. If it says that it generated it successfully and appended it to the save, then you should be all set (once you close and reopen the TAM client, it should say that it's connected on the bottom of the main menu).
Then open TAM and the Settings dialog again, there should be a Prefix Manager button on the bottom left of the Settings dialog. This will allow you to create prefixes.
- What is a prefix? A prefix is as named: it creates a unique tableset for each prefix (multiple sets of tickets and items). So if you're running an auction with specialty items and tickets or door prizes, you can create a prefix specifically for those.
Then once you save, close, and reopen once again, you should be all set to start using it.
- Home
- Setup Instructions
- Backup and Restore
-
Environment Variables (Server)
-
API_PW
- Sets password to generate API keys. Enables api security when set.
-
SS_MODE
- Pairs API keys to IP addresses when set.
-
DB_TYPE
- Sets DB Type between "LOCAL" (SQLite) and "MARIADB".
-
MARIADB Credentials
- Click to see the environment variables to set MariaDB credentials, such as the host, username, password, and database.
-
API_PW