schollz / find3

High-precision indoor positioning framework, version 3.
https://www.internalpositioning.com/doc
MIT License
4.63k stars 363 forks source link

Build and run the project with docker-compose #176

Open laurolima opened 4 years ago

laurolima commented 4 years ago

A Dockerfile for each server [ai, main] and docker-compose.yml would make development and deployment easier.

Instead of rebuilding the whole system via docker every development iteration, we would only build the parts that have been modified.

schollz commented 4 years ago

I will happily take a PR for this!

Mattie commented 3 years ago

For anyone who is trying to get docker-compose working here, I did the following. Note that I already have an MQTT server I wanted to use on the same server, so I set up a bridge on the existing server I had to pull from the find3server's MQTT server.

    image: schollz/find3
    restart: unless-stopped
    ports:
        - "1889:1883"
        - "8005:8003"
    volumes:
        - /home/USER/DOCKERSTUFF/find3/data:/data
    environment:
        MQTT_ADMIN: 'ADMIN_REPLACE_ME'
        MQTT_PASS: 'PASSWORD_REPLACE_ME'
        MQTT_SERVER: '127.0.0.1:1883'
        MQTT_EXTERNAL: 'THE_IP_ADDRESS_THAT_THE_CLIENT_SHOULD_BE_TOLD_ABOUT'
        MQTT_PORT: '1883'

This moved the find3server UI to port 8005. I moved the container's MQTT port to 1889 since I had another MQTT server I use for everything and Home Assistant only supports a single one.

Here are the changes I added to the end of mosquito.conf of my other local MQTT server to bridge in the topics from the find3server:


connection external-bridge
address 127.0.0.1:1889
topic # in
remote_username ADMIN_REPLACE_ME
remote_password PASSWORD_REPLACE_ME```