also corrected a couple errors fixes #212
3.1 KiB
Docker help for qrm2
You have multiple ways to use docker to run an instance of qrm2.
Using docker-compose and the prebuilt-image (recommended)
This is the easiest method for running the bot without any modifications.
Do not clone the repository when using this method!
-
Create a new directory and
cd
into it. -
Create the
docker-compose.yml
file:version: '3' services: qrm2: image: "classabbyamp/qrm2:latest" # OR # image: "docker.pkg.github.com/miaowware/qrm2/qrm2:latest" restart: on-failure volumes: - "./data:/app/data:rw" environment: - PYTHONUNBUFFERED=1
Note that there are two possible sources for the image: docker's and github's registry. Github's registry requires a few extra steps during the initial setup.
-
Create a subdirectory named
data
. -
Copy the templates for
options.py
andkeys.py
todata/
, and edit them. -
Run
docker-compose
:$ docker-compose pull $ docker-compose up -d
Run without "-d" to test the bot. (run in foreground)
Using docker-compose and building the image
This is the easiest method to run the bot with modifications.
-
cd
into the repository. -
Create the
docker-compose.yml
file:version: '3' services: qrm2: build: . image: "qrm2:local-latest" restart: on-failure volumes: - "./data:/app/data:rw" environment: - PYTHONUNBUFFERED=1
-
Create a subdirectory named
data
. -
Copy the templates for
options.py
andkeys.py
todata/
, and edit them. -
Run
docker-compose
:$ docker-compose build --pull $ docker-compose up -d
Run without "-d" to test the bot. (run in foreground)
Using pure docker
This methods is not very nice to use.
I just wanna run the darn thing, not do gymnastics!
[Optional] Building the image
-
cd
into the repository. -
Run docker build:
$ docker build -t qrm2:local-latest .
Creating the container
-
Be in a directory with a
data/
subdirectory, which should contain validoptions.py
andkeys.py
files (copy and edit the templates). -
Run the container:
$ docker run -d --rm --mount type=bind,src=$(pwd)/data,dst=/app/data --name qrm2 [image]
Where
[image]
is either of:discord-qrm2:local-latest
if you are building your own.classabbyamp/discord-qrm2:latest
if you want to use the prebuilt image.