Docker Support


The Advantages of Docker

Docker is a simple way for users to deploy JJMumbleBot in isolated containers on a variety of devices without worrying about complicated setup procedures and requirements.
Learn more about Docker here: Getting Started with Docker

Visit JJMumbleBot on Docker Hub here: JJMumbleBot Docker Hub Page

Requirements

For information on how to setup Docker for your system, please refer to this page: Docker Installation

Simple Setup

  1. Make sure the docker service is started, for more information check here: How To Start Docker Service
  2. You can pull the docker container from DockerHub.
    • Latest (Unstable): docker pull jasonjerome/jjmumblebot:latest
    • Release v5.2.0: docker pull jasonjerome/jjmumblebot:release-5.2.0
    • Note: Use the release tag corresponding to the version you want to use!
  3. Run the bot with one of the various commands provided below:

    Make sure you export MUMBLE_IP/MUMBLE_PORT/MUMBLE_PASSWORD environment variables if you're using environment variables.
    Minimal run command using docker (with environment variables for IP/Port/Password):
    sudo -E docker run -e MUMBLE_IP -e MUMBLE_PORT -e MUMBLE_PASSWORD --network "host" jasonjerome/jjmumblebot -generatecert -username 'bot_username' -superuser 'superuser_username'
    Minimal run command using docker (no environment variables):
    sudo docker run --network "host" jasonjerome/jjmumblebot -generatecert -ip 'server_ip' -port 'server_port' -username 'bot_username' -superuser 'superuser_username'
    Minimal run command using docker-compose (with environment variables for IP/Port/Password):
    sudo -E docker-compose run -e MUMBLE_IP -e MUMBLE_PORT -e MUMBLE_PASSWORD bot -generatecert -username 'bot_username' -superuser 'superuser_username'
    Minimal run command using docker-compose (no environment variables):
    sudo docker-compose run bot -generatecert -ip 'server_ip' -port 'server_port' -username 'bot_username' -superuser 'superuser_username'
    Required bot launch parameters:
    • -ip: Sets the server ip.
    • -port: Sets the server port.
    • -password: Sets the password required to connect to the server. This is not required if your server is unprotected.
    • -username: The username for the bot that will be displayed to other users in the server.
    • -superuser: The username of the admin/superuser who has full control over bot functionality.
      For more information about user privileges, check this page: User Privileges
    • For a full list of launch parameters, check this page: Launch Parameters
    Required docker launch parameters if a custom web interface port is used:
    • --expose <custom_port>: Exposes the required custom port for the web interface

Using Pre-Existing Files - Configs, Aliases, Databases, Certificates

if you have already used JJMumbleBot before, and you want to use pre-existing database files, or configs,
then you can navigate to the JJMumbleBot/cfg/ directory and drop your config.ini files, alias files, database files, and certificate here.