bmartin5692 / bumper

A standalone and self-hosted implementation of the central server used by Ecovacs vacuum robots.
GNU General Public License v3.0
286 stars 48 forks source link

docker not working #144

Open lobneroO opened 3 months ago

lobneroO commented 3 months ago

Describe the bug After docker isntallation, certs are created but there is a login on confserver with seems to not be working. Access via app does not work.

To Reproduce Steps to reproduce the behavior:

  1. On a proxmox server, create a new Arch Linux LXC container, update it and install docker
  2. Note the ip address of the LXC container, e.g. 192.168.178.34
  3. On a local pihole, setup the DNS settings as required by the docs.
  4. Start the docker container as suggested in the docs: docker run -it -e "BUMPER_ANNOUNCE_IP=192.168.178.34" -p 443:443 -p 8007:8007 -p 8883:8883 -p 5223:5223 -v /home/admin/bumper/data:/bumper/data --name bumper bmartin5692/bumper
  5. Output will first give out successes, then start spamming attempted logins:

Creating certificates -------- Create_Certs -------- -------- Starting Certificate Creation -------- Options: Output Directory: /bumper/certs Input SAN List: /bumper/create_certs/Bumper_SAN.txt -------- Creating CA Cert -------- 2024/06/16 14:11:50 ca.crt created at /bumper/certs/ca.crt 2024/06/16 14:11:50 ca.key created at /bumper/certs/ca.key -------- Creating Server Cert -------- 2024/06/16 14:11:50 bumper.crt created at /bumper/certs/bumper.crt 2024/06/16 14:11:50 bumper.key created at /bumper/certs/bumper.key -------- Certificate Creation Complete -------- Certificates created [2024-06-16 14:11:50,676] :: INFO :: bumper :: Starting Bumper [2024-06-16 14:11:50,698] :: INFO :: mqttserver :: Starting MQTT Server at 172.17.0.2:8883 [2024-06-16 14:11:50,701] :: INFO :: hbmqtt.broker :: Listener 'tls1' bind to 172.17.0.2:8883 (max_connections=-1) [2024-06-16 14:11:50,704] :: INFO :: xmppserver :: Starting XMPP Server at 172.17.0.2:5223 [2024-06-16 14:11:50,707] :: INFO :: hbmqtt.broker :: Listener 'tls1': 1 connections acquired [2024-06-16 14:11:50,708] :: INFO :: hbmqtt.broker :: Connection from 172.17.0.2:55286 on listener 'tls1' [2024-06-16 14:11:50,709] :: INFO :: mqttserver :: Bumper Authentication Success - Helperbot: helperbot@bumper/helperbot [2024-06-16 14:12:05,969] :: INFO :: confserver :: client with devid HA-home attempting login [2024-06-16 14:12:06,895] :: INFO :: confserver :: client with devid HA-home attempting login [2024-06-16 14:12:08,071] :: INFO :: confserver :: client with devid HA-home attempting login [2024-06-16 14:12:09,902] :: INFO :: confserver :: client with devid HA-home attempting login

  1. Restart the deebot vacuum
  2. Logs stay mostly the same, but now a few acquired connections are added (.35 address is local home assistant which was setup for this in parallel but doesn't show anything either):

    [2024-06-16 15:07:52,019] :: INFO :: confserver :: client with devid HA-home attempting login [2024-06-16 15:07:53,018] :: INFO :: confserver :: client with devid HA-home attempting login [2024-06-16 15:07:55,014] :: INFO :: confserver :: client with devid HA-home attempting login [2024-06-16 15:07:55,056] :: INFO :: hbmqtt.broker :: Listener 'tls1': 4 connections acquired [2024-06-16 15:07:55,057] :: INFO :: hbmqtt.broker :: Connection from 192.168.178.35:60371 on listener 'tls1' [2024-06-16 15:07:55,062] :: INFO :: mqttserver :: Bumper Authentication Success - Client - Username: fuid_tmpuser - ClientID: fuid_tmpuser@ecouser/HA-home [2024-06-16 15:08:06,020] :: INFO :: confserver :: client with devid HA-home attempting login [2024-06-16 15:09:12,020] :: INFO :: confserver :: client with devid HA-home attempting login [2024-06-16 15:09:13,020] :: INFO :: confserver :: client with devid HA-home attempting login

Expected behavior Login should probably work / return success. App should show the vaccuum online Home Assistant should see the vacuum

Desktop (please complete the following information):

Smartphone (please complete the following information):

Vacuum (please complete the following information):

Logs attached (I tried to manually use python3 -m bumper in the end, which lead to some of the errors) logs.zip

bigboigahoy commented 3 months ago

I can't speak on the errors, but could not get bumper to work using the example in the past (likely user error). What did work for me was using the docker-compose in the example (obviously change things as needed). That did not solve the app problem, but did allow me to use home assistant. I did this on Unraid, so I used the compose as an example since there is no compose capability or or the ability to rely on other docker containers built in on Unraid.

To summarize what I did (since I do not have docker compose):

  1. Copy the nginx folder from the example and put it in the appropriate place for your environment.
  2. Install bumper container with all appropriate ports and locations.
  3. Run bumper
  4. Install nginx an point to the folder that was copied (I had to setup a custom interface only because I already have a server running on ports 80, and 443 but that likely won't be the case for you).
  5. Run nginx after bumper has started (if you are able to use docker compose a lot of this is simplified)
  6. In pihole on my custom dnsmasq entry I pointed the three urls to the nginx server.
  7. Run sudo service pihole-FTL restart on pihole to reload these changes
  8. Unplug the vacuum and flip the switch on the vacuum off and on and re-plug in the vacuum.
  9. Vacuum authenticated
  10. Optional: setup homeassistant based on the documentation (make sure you have advanced mode on or it won't give you a local option)

One thing I could not get working is the app. It seems like a lot of people still have this issue however. Hope this helps!