From 39d9850c41754b4d668d895bb22f6601a6bc3fa3 Mon Sep 17 00:00:00 2001 From: Benjamin Sherriff Date: Sun, 3 Mar 2024 16:17:56 -0500 Subject: [PATCH] Updated docker commands, docs --- README.md | 18 +++++++++++++----- docs/discord_token_example.png | Bin 0 -> 113230 bytes service/.env.TEMPLATE | 6 +++--- service/Makefile | 11 ++++++----- service/docker-compose.yml | 11 +++++++++++ ui/docker-compose.yml | 2 ++ 6 files changed, 35 insertions(+), 13 deletions(-) create mode 100644 docs/discord_token_example.png diff --git a/README.md b/README.md index 4350ec8..f5e35f6 100644 --- a/README.md +++ b/README.md @@ -8,6 +8,12 @@ Siren is a D&D Bot built for Discord, written in Rust. Features include: - Assistant DM tools to be defined later ## Running +1. Setup the Discord Developer Application and bot +2. Copy `.env.TEMPLATE` to `.env` and fill out the fields +3. Build the [Docker](https://www.docker.com/) application with `make build` +4. Start the application with `make up` + +### Setting up the Discord Developer Application Visit the [Discord Developer Portal](https://discord.com/developers/applications) and create a new application. Click [here](https://discord.com/developers/docs/intro) for guides and more information. Required Scopes: @@ -20,9 +26,9 @@ https://discord.com/api/oauth2/authorize?client_id=&permissions=40671 ``` The CLIENT_ID can be found in the General Information tab on the Discord Developer Portal for your application, under `Application ID` -1. Copy `.env.TEMPLATE` to `.env` and fill out the fields -2. Build the [Docker](https://www.docker.com/) application with `make build` -3. Start the application with `make up` +The DISCORD_TOKEN (used in the `.env file`) can be found under the Bot tab on the Discord Developer Portal for your application. + +![DISCORD_TOKEN Example](docs/discord_token_example.png) ## Contributing [Rust](https://www.rust-lang.org/) must be installed to run locally. See [serenity-rs/serenity](https://github.com/serenity-rs/serenity) for more information about Rust Discord API Library. @@ -61,8 +67,10 @@ The following packages must be installed for [serenity-rs/songbird](https://gith ``` -Begin the application with `cargo run` (note the database must still be running) - - `docker compose up -d db` +### Running Locally +1. Build the [Docker](https://www.docker.com/) containers with `make build` +2. Start the utility containers with `make utils` +3. Start the application with `cargo run` The application can also be tested from within a Docker container: ``` diff --git a/docs/discord_token_example.png b/docs/discord_token_example.png new file mode 100644 index 0000000000000000000000000000000000000000..87ab9b5f64d8a9d9d3a3e8a7731bbecb527dfc23 GIT binary patch literal 113230 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͐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

7LNLe9zm=ZYSo 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 literal 0 HcmV?d00001 diff --git a/service/.env.TEMPLATE b/service/.env.TEMPLATE index 580a9eb..743a54d 100644 --- a/service/.env.TEMPLATE +++ b/service/.env.TEMPLATE @@ -1,7 +1,7 @@ RUST_LOG=warn,service=info DATABASE_USER=siren -DATABASE_PASSWORD= +DATABASE_PASSWORD= #Required DATABASE_NAME=siren DATABASE_HOST=localhost DATABASE_PORT=5432 @@ -10,7 +10,7 @@ KEYS_DIR_PATH= SESSION_TTL=1440 MINIO_ROOT_USER=siren -MINIO_ROOT_PASSWORD= +MINIO_ROOT_PASSWORD= #Required MINIO_HOST=localhost MINIO_PORT=9000 MINIO_PORT_INTERNAL=9001 @@ -22,6 +22,6 @@ SERVICE_HOST=localhost SERVICE_PORT=5000 DATA_DIR_PATH= -DISCORD_TOKEN= +DISCORD_TOKEN= #Required OPENAI_API_KEY= OPENAI_API_MODEL=gpt-3.5-turbo \ No newline at end of file diff --git a/service/Makefile b/service/Makefile index b8d76f9..2c90f5f 100644 --- a/service/Makefile +++ b/service/Makefile @@ -13,10 +13,11 @@ help: ## Help command build: ## Build the docker image docker compose build -utils: ## Start the utils - docker compose up -d db - docker compose up -d redis - docker compose up -d minio +backend-up: ## Start the backend containers + docker compose --profile backend up -d + +backend-down: ## Stop the backend containers + docker compose --profile backend down up: ## Start the app docker compose up -d @@ -24,7 +25,7 @@ up: ## Start the app down: ## Stop the app docker compose down -clean: +clean: ## Clean the app docker compose down && \ docker image rm siren-service || \ docker network rm siren_frontend || \ diff --git a/service/docker-compose.yml b/service/docker-compose.yml index d0c1016..73718db 100644 --- a/service/docker-compose.yml +++ b/service/docker-compose.yml @@ -37,6 +37,9 @@ services: - frontend - backend restart: unless-stopped + profiles: + - siren + db: image: postgres:latest container_name: siren-db @@ -53,6 +56,9 @@ services: networks: - backend restart: unless-stopped + profiles: + - backend + redis: image: redis:latest container_name: siren-redis @@ -63,6 +69,9 @@ services: networks: - backend restart: unless-stopped + profiles: + - backend + minio: image: minio/minio container_name: siren-minio @@ -78,6 +87,8 @@ services: - backend command: server --console-address ":9001" /data restart: unless-stopped + profiles: + - backend volumes: db: diff --git a/ui/docker-compose.yml b/ui/docker-compose.yml index b95adaf..0959ef0 100644 --- a/ui/docker-compose.yml +++ b/ui/docker-compose.yml @@ -21,6 +21,8 @@ services: networks: - siren-frontend restart: unless-stopped + profiles: + - frontend networks: siren-frontend: {}