2 Host your own (Docker)
Steffo edited this page 2026-09-02 04:13:39 +02:00

If you really want, you can host your own instance of Patched Porobot.

Requirements

Installation

  1. Create and access a directory on the host machine:
    mkdir my-porobot
    cd my-porobot
    

Discord

  1. Create an application at the Discord Developer Portal, and store its Application ID.

  2. In the Installation tab, set Installation Contexts to Guild Install.

  3. In the Installation tab, set Default Install Settings to scopes applications.commands, and no permissions.

  4. In the Bot tab, press Reset Token, and store the generated string.

Telegram

  1. Create a bot at @BotFather, and store its API token.

Reverse proxy

  1. Set up your reverse proxy of choice so that it redirects incoming traffic to your domain name to 127.0.0.1:8080.

  2. Make sure TLS certificates have been set up, and that HTTPS is available.

Docker

  1. Create a new compose.yml file with the following contents, replacing the values of IMGPROXY_HOST with your domain name, IMGPROXY_KEY and IMGPROXY_SALT with a random string, TELOXIDE_TOKEN with the token you got from @BotFather, SERENITY_APPID with the Discord Application ID, and SERENITY_TOKEN with the Discord Bot token:

    services:
      imgproxy:
        image: ghcr.io/imgproxy/imgproxy:v4.0.14
    
        ports:
          -
            name: "imgproxy-http"
            protocol: tcp
            app_protocol: http
            host_ip: 127.0.0.1
            target: 8080
            published: 8080
    
        restart: unless-stopped
        environment: &imgproxy_env
          IMGPROXY_HOST: "https://YOURPUBLICDOMAIN.example"
          IMGPROXY_KEY: "SOME-RANDOM-STRING"
          IMGPROXY_SALT: "ANOTHER-RANDOM-STRING"
    
      telegram:
        image: g.starshard.space/steffo/patched_porobot_telegram:latest
        restart: unless-stopped
        environment:
          <<: *imgproxy_env
          TELOXIDE_TOKEN: "0000000000:AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
    
      discord:
        image: g.starshard.space/steffo/patched_porobot_discord:latest
        restart: unless-stopped
        environment:
          SERENITY_APPID: "123456789"
          SERENITY_TOKEN: "AAAAAAAAAAAAAAAAAAAAAAAAAA.BBBBBB.CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
    
  2. Run the bots:

    docker compose up -d