bumper/docs/Docker.md
Robert Resch df36bdd29d
add new endpoints for app v2 (#116)
* add some new endpoints for app v2

* add oauth

* update EcoVacsHomeProducts
- new attribute model

* add some missing endpoints for app v2

* - use only one level subdomain urls on service list
- add status

* add new used subdomains (for europe)

* improve docker images creation as requirements are change less often

* reformat area list

* add revoke expired oauths

* add docker-compose example

* wait for mqtt start fixes #107

* make images even smaller by copying only required folders instead of all (.git,...)

* fix exception during logging

* return fail if we can't get clean logs

* improve docker docs. Thanks for the hit @Bustel

* fix body not json serializable

* add docker-compose example in separate folder
2021-06-05 09:06:18 -04:00

54 lines
1.5 KiB
Markdown

# Docker Hub
To download the image from Docker Hub you can run the following:
`docker pull bmartin5692/bumper`
[View Bumper on Docker Hub](https://hub.docker.com/r/bmartin5692/bumper)
# Build a Docker image
To build the docker image yourself you can run the following:
`docker build -t bmartin5692/bumper .`
This requires Docker 17.09 or newer, but has also been tested with podman.
# Docker usage
To run the image in docker some environment settings and port mappings are required:
**Ports Required: (-p)**
- 443 - `-p 443:443`
- 8007 - `-p 8007:8007`
- 8883 - `-p 8883:8883`
- 5223 - `-p 5223:5223`
**Environment Settings: (-e)**
`BUMPER_ANNOUNCE_IP` should be used so the actual host IP is reported to bots that checkin.
- BUMPER_ANNOUNCE_IP - `-e "BUMPER_ANNOUNCE_IP=X.X.X.X"`
**Volume Settings: (-v)**
Optionally you can map existing directories for logs, data, and certs.
- data/logs/certs
- Data - `-v /home/user/bumper/data:/bumper/data`
**Full Example:**
````
docker run -it -e "BUMPER_ANNOUNCE_IP=X.X.X.X" -p 443:443 -p 8007:8007 -p 8883:8883 -p 5223:5223 -v /home/user/bumper/data:/bumper/data --name bumper bmartin5692/bumper
````
# Docker-compose
A docker-compose example can be found in the ["example" folder](https://github.com/bmartin5692/bumper/tree/master/example/docker-compose).
The docker-compose starts two services:
- bumper itself
- nginx proxy, which redirects MQTT traffic on port `443` to port `8883`
The redirection is required as the app v2+ and robots with a newer firmware are connecting to the mqtt server on port 433.