Deploying WizBot with Docker: A Comprehensive Guide¶
Getting Started¶
Ensure Docker and Docker Compose are installed on your system. If not, follow the official Docker guides for your specific operating system:
Step-by-Step Installation¶
-
Choose Your Workspace: Select a directory where you'll set up your WizBot stack. Use your terminal to navigate to this directory. For the purpose of this guide, we'll use
/opt/stacks/wizbot/
as an example, but you can choose any directory that suits your needs. -
Create a Docker Compose File: In this directory, create a Docker Compose file named
docker-compose.yml
. You can use any text editor for this task. For instance, to use thenano
editor, typenano docker-compose.yml
. -
Configure Your Docker Compose File: Populate your Docker Compose file with the following configuration:
services:
wizbot:
image: registry.gitlab.com/WizNet/WizBot:latest
container_name: wizbot
restart: unless-stopped
environment:
TZ: Europe/Rome
volumes:
- /opt/stacks/wizbot/conf/creds.yml:/app/data/creds.yml
- /opt/stacks/wizbot/data:/app/data
networks: {}
-
Prepare Your Credentials File: Before running Docker Compose, ensure the
creds.yml
file exists in the/opt/stacks/wizbot/conf/
directory. If it's missing, create it usingtouch /opt/stacks/wizbot/conf/creds.yml
. You may need to usesudo
. Remember to replace/opt/stacks/wizbot/
with your chosen directory. -
Edit Your Credentials File: Populate the
creds.yml
file in/opt/stacks/wizbot/conf/creds.yml
with your bot's credentials. You can use any text editor for this task. For instance, to use thenano
editor, typenano /opt/stacks/wizbot/conf/creds.yml
. You may need to usesudo
. Again, replace/opt/stacks/wizbot/
with your chosen directory. -
Launch Your Bot: Now, you're ready to run Docker Compose. Use the following command:
docker-compose up -d
.
Keeping Your Bot Up-to-Date¶
There are two methods to update your WizBot:
Manual Update¶
-
Navigate to Your Directory: Use
cd /path/to/your/directory
to go to the directory containing your Docker Compose file. -
Pull the Latest Images: Use
docker-compose pull
to fetch the latest images. -
Restart Your Containers: Use
docker-compose up -d
to restart the containers.
Automatic Update with Watchtower¶
If you prefer an automated update process, consider using Watchtower. Watchtower automatically updates your Docker containers to the latest versions.
To use Watchtower with WizBot, you need to add a specific label to the service in your Docker Compose file. Here's how your Docker Compose file should look:
services:
wizbot:
image: registry.gitlab.com/WizNet/WizBot:latest
container_name: wizbot
restart: unless-stopped
labels:
- com.centurylinklabs.watchtower.enable=true
environment:
TZ: Europe/Rome
volumes:
- /opt/stacks/wizbot/conf/creds.yml:/app/data/creds.yml
- /opt/stacks/wizbot/data:/app/data
networks: {}
Remember to replace /opt/stacks/wizbot/
with your chosen directory in the Docker Compose file.
To install and run Watchtower, follow the guide provided by Containrrr: