Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Docker compose quick start? #45

Open
andzejsp opened this issue Sep 13, 2023 · 1 comment
Open

Docker compose quick start? #45

andzejsp opened this issue Sep 13, 2023 · 1 comment

Comments

@andzejsp
Copy link

andzejsp commented Sep 13, 2023

Hi, i cant figure out how to make this work with docker compose.

My matrix is runing on separate compose file

I created new folder:
mx-puppet-steam/
./docker-compose.yml

version: "3.4"
services:
  mx-puppet-steam:
    hostname: mx-puppet-steam
    image: icewind1991/mx-puppet-steam
    restart: always
    volumes:
      - ./config.yaml:/data/config.yaml
     
    networks:
      - internal
networks:
  internal:

./config.yaml

bridge:
  # Port to host the bridge on which your homeserver will connect to
  port: 6000
  # Address for the bridge to bind to; if running as a Docker container, you
  # probably want 0.0.0.0 here
  bindAddress: 0.0.0.0
  # Name of your homeserver
  domain: matrix.example2.com
  # URL where the bridge can connect to your homeserver
  homeserverUrl: https://matrix.example2.com

provisioning:
  # Which users are allowed to issue commands to @_steampuppet_bot
  # whitelist:
  #  - "@*:matrix.example.com"
  # A blacklist can be used instead:
  # blacklist:
  #   - "@username:matrix\\.myhomeserver\\.com"

  # Shared secret for the provisioning API for use by integration managers.
  # If this is not set, the provisioning API will not be enabled.
  #sharedSecret: random string
  # Path prefix for the provisioning API. /v1 will be appended to the prefix automatically.
  apiPrefix: /_matrix/provision

presence:
  # Bridge Steam online/offline status
  enabled: true

  # How often to send status to the homeserver in milliseconds
  interval: 5000

Then i run: docker compose up -d

It runs, but logs say it cant connect to my matrix. Ok, so now i have to register the bridge with my matrix homeserver.yaml.

But how? Where can i get the registration file? How to expose it from docker container? What lines do i need to add to my homeserver.yaml ???

EDIT:

I got it to run and kinda connect to my matrix.

Had to do the following:

Instead of creating ./config.yaml - > ./data/config.yaml and then bind the folder data. Also removed the network thing and added ports.

./docker-compose.yml

version: "3.4"
services:
  mx-puppet-steam:
    hostname: mx-puppet-steam
    image: icewind1991/mx-puppet-steam
    restart: always
    volumes:
      - ./data/config.yaml:/data/config.yaml
      - ./data:/data
    ports:
      - "6000:6000"

Then in the data folder the registration file was generated.
./data/steam-registration.yaml

Then i copied the registration file to the same folder as my matrix homeserver.yaml (dendrite.yaml) and added the path to the:
homeserver.yaml (dendrite.yaml)

# Configuration for the Appservice API.
app_service_api:
  # Disable the validation of TLS certificates of appservices. This is
  # not recommended in production since it may allow appservice traffic
  # to be sent to an insecure endpoint.
  disable_tls_validation: false

  # Appservice configuration files to load into this homeserver.
  config_files:
    - ./steam-registration.yaml

After reloading both composes, the mx container shows me this:


Sep-13 19:07:59.619 [Store] info: Starting DB Init
Sep-13 19:07:59.621 [Store] info: Filename present in config, using sqlite
Sep-13 19:07:59.621 [SQLite3] info: Opening database.db
Sep-13 19:07:59.626 [Store] info: Database schema version is 16, latest version is 16
Sep-13 19:07:59.627 [PuppetBridge] info: Starting application service....
Sep-13 19:07:59.630 [bot-sdk-MatrixHttpClient] info: (REQ-1) POST https://matrix.example2.com/_matrix/client/r0/register
Sep-13 19:07:59.662 [PuppetBridge] info: Application service started!
Sep-13 19:07:59.662 [PuppetBridge] info: Setting bridge user data...
Sep-13 19:07:59.662 [bot-sdk-MatrixHttpClient] info: (REQ-2) GET https://matrix.example2.com/_matrix/client/r0/profile/%40_steampuppet_bot%3Aexample2.com
Sep-13 19:07:59.688 [PuppetBridge] info: Activating users...
Sep-13 19:07:59.689 [PresenceHandler] info: Starting presence handler with new interval 5000ms
matrix@matrix:~/mx-puppet-steam$ 

Now how do i control it from my element app?

I created private space, private room, and then i sent a message:

@_steampuppet_bot:matrix.matrix.example2.com

but nothing happened.

What am i missing?

EDIT

So i invited the bot to my private room but it shows offline (the bot is offline) and when i mention the bot nothing happens

Thanks in andvance!

@yunkuangao
Copy link

I think it's related to this.
#44

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants