Dawarich in Docker / alternatief voor Google Timeline

Windows, Android, iOS, Linux, Chrome OS, ...
Plaats reactie
Tazmanian79
Pro Member
Pro Member
Berichten: 256
Lid geworden op: 21 aug 2008, 12:57
Uitgedeelde bedankjes: 27 keer
Bedankt: 26 keer
Provider

Deze week heeft Google laten weten dat het stopt met de Google Timeline via de browser, dat alles lokaal gaat worden opgeslagen via e App op uw gsm.

Ik heb al jaren geschiedenis via Google Timeline en gebruik de webversie regelmatig en is mooi overzichtelijk.

Ik zoek dus een alternatief om dit zelf te hosten en ik heb dit gevonden via Dawarich ( https://github.com/Freika/dawarich )
Dit kan op mijn NAS in Docker draaien.

Maar ik er is (nog) geen handleiding beschikbaar om dit te installeren.
Ik heb nog al Dockers draaien (HA / TeslaMate / NodeRed / ...) maar dat was allemaal via een handleiding van MariusHosting. Alles werkt perfect.

Ik had via via al doorgekregen gewoon de docker-compose.yml ui te voeren. Maar dat lijkt mij te simpel.
Omdat in alle andere installatie's er hier en daar wel aanpassingen nodig waren.


Is er iemand die hier wat meer over weet en een handleiding kan maken? :idea:
tizzen33
Member
Member
Berichten: 88
Lid geworden op: 30 maa 2017, 10:14
Uitgedeelde bedankjes: 5 keer
Bedankt: 21 keer
Provider

Tazmanian79 schreef: 13 jun 2024, 07:51
Ik had via via al doorgekregen gewoon de docker-compose.yml ui te voeren. Maar dat lijkt mij te simpel.
Dat is toch net de bedoeling van een Docker compose file. Ik zou die zo eens proberen draaien en zien wat het geeft. Je kan de environmental variables uit de readme nog aanpassen maar niet noodzakelijk.
Gebruikersavatar
Splitter
Elite Poster
Elite Poster
Berichten: 5866
Lid geworden op: 10 maa 2010, 12:30
Uitgedeelde bedankjes: 68 keer
Bedankt: 598 keer
Te Koop forum

heb het in de vlugte even geprobeerd en wou een import van google timeline doen.... na een tijdje had de container 22gb diskspace nodig, dus iets lijkt me niet helemaal prima te zijn met de defaults (of er zou wat anders misgelopen zijn, moet het nog even bekijken - ik draai redis wel in een aparte docker, maar dat zou niet mogen uitmaken natuurlijk
Gebruikersavatar
MaT
Elite Poster
Elite Poster
Berichten: 2165
Lid geworden op: 18 feb 2014, 15:40
Locatie: Gent
Uitgedeelde bedankjes: 168 keer
Bedankt: 317 keer
Provider

Splitter schreef: 13 jun 2024, 21:59 ik draai redis wel in een aparte docker,
Waarom dat?
Het BIPT aanziet modems en routers als een onderdeel van de eindapparatuur van de eindgebruiker waardoor deze vrij te kiezen zijn voor breedband en internettelefonie.
Bron
Gebruikersavatar
Splitter
Elite Poster
Elite Poster
Berichten: 5866
Lid geworden op: 10 maa 2010, 12:30
Uitgedeelde bedankjes: 68 keer
Bedankt: 598 keer
Te Koop forum

waarom zou ik 10x een redis instance draaien? dat is me wat te absurd qua resources :)
ik heb een docker voor postgres, eentje voor mysql, en eentje voor redis. die zijn gewoon via docker intern te bereiken voor de andere containers,
en hebben persistent storage op de host.
ik open ook geen poorten via de docker files, alles wat naar buiten toe open moet, is geproxied via de caddy docker.

in eerste instantie lijkt het grootste probleem met dawarich de default logging van docker, en als je de google export gaat importeren krijg je een belachelijk absurd groot log.
heb ik ondertussen opgelost door de logging naar syslog te doen, en de host zijn syslog is beperkt tot 500mb.
(note: mijn google records.json spant ongeveer 10 jaar en is een 900mb groot, nog geen idee hoeveel datapoints dat in totaal zijn gezien dawarich nog bezig is met het importeren)
Gebruikersavatar
MaT
Elite Poster
Elite Poster
Berichten: 2165
Lid geworden op: 18 feb 2014, 15:40
Locatie: Gent
Uitgedeelde bedankjes: 168 keer
Bedankt: 317 keer
Provider

Het is niet onmogelijk natuurlijk, maar de bedoeling van containerisatie is net een beetje dat elke toepassing zijn eigen afgeschermde omgeving met eigen services heeft.
Zo is het mogelijk om elke container van andere toepassingen dezelfde image te geven maar met een andere versie, kan toepassing A nooit de container om zeep helpen die toepassing B ook gebruikt, kunnen kwaadwilligen niet via een lek in container A niet bij de data van container B,...enz.
Het BIPT aanziet modems en routers als een onderdeel van de eindapparatuur van de eindgebruiker waardoor deze vrij te kiezen zijn voor breedband en internettelefonie.
Bron
Tazmanian79
Pro Member
Pro Member
Berichten: 256
Lid geworden op: 21 aug 2008, 12:57
Uitgedeelde bedankjes: 27 keer
Bedankt: 26 keer
Provider

Via het Synology forum heb ik de docker-compose.yml als volgt aangepast.

Code: Selecteer alles

volumes:
  db_data:
  gem_cache:
  shared_data:
  public:
NAAR

Code: Selecteer alles

volumes:
  db_data:
    driver: local # Define the driver and options under the volume name
    driver_opts:
      type: none
      device: /volume1/docker/dawarich/db_data
      o: bind
  gem_cache:
    driver: local # Define the driver and options under the volume name
    driver_opts:
      type: none
      device: /volume1/docker/dawarich/gem_cache
      o: bind
  shared_data:
    driver: local # Define the driver and options under the volume name
    driver_opts:
      type: none
      device: /volume1/docker/dawarich/shared_data
      o: bind
  public:
    driver: local # Define the driver and options under the volume name
    driver_opts:
      type: none
      device: /volume1/docker/dawarich/public
      o: bind

Alles werkt, alleen de imports lopen niet (helemaal) goed.
Via Google Takeout alles gedownload, maar om een of andere reden worden de imports maar gedeeltelijk verwerkt.
Gebruikersavatar
MaT
Elite Poster
Elite Poster
Berichten: 2165
Lid geworden op: 18 feb 2014, 15:40
Locatie: Gent
Uitgedeelde bedankjes: 168 keer
Bedankt: 317 keer
Provider

Sowieso lijkt dit een interessant alternatief voor google timeline, maar zou het ook een vervanger kunnen zijn voor een klassieke GPS tracker?

Ik gebruik momenteel traccar om mijn bewegingen te tracken. Elke 30s word mijn locatie doorgestuurd naar de server.
Dit gebruik ik om onder andere mijn werktijden te kunnen bepalen achteraf, discussies over verkeersboetes te vermijden, die leuke plek die ik bezocht heb maar niet heb onthouden terug te kunnen vinden (soms maanden nadien),...

Kan dit even nauwkeurig werken? Google timeline was daar toch niet niet genoeg voor.
Het BIPT aanziet modems en routers als een onderdeel van de eindapparatuur van de eindgebruiker waardoor deze vrij te kiezen zijn voor breedband en internettelefonie.
Bron
Tazmanian79
Pro Member
Pro Member
Berichten: 256
Lid geworden op: 21 aug 2008, 12:57
Uitgedeelde bedankjes: 27 keer
Bedankt: 26 keer
Provider

Volgens mij wel, je kan zelf de Owntracks app instellen wanneer die een update moet sturen over de locatie.
Ik ben er nu mee aan het testen.

Sinds gisteren ben ik al mijn gegevens van Google Timeline aan het importeren in Dawarich, maar dit gaat zeer traag (op de NAS).
Ik heb een bestand van 1Gb gegevens vanaf 2011 en nu 15h zit ik nog maar aan begin 2013 wat verwerkt is. Dus nog 11j te gaan. Zal dus nog wel enkele dagen duren eer alles is geimporteerd.

Toegevoegd na 4 minuten 2 seconden:
Voor de geintresseerden om dit te draaien in Docker op een Synology. Mijn docker-compose.yml
Werkt voor versie 0.6.3

Code: Selecteer alles

version: '3'
networks:
  dawarich:
services:
  dawarich_redis:
    image: redis:7.0-alpine
    command: redis-server
    networks:
      - dawarich
    volumes:
      - shared_data:/var/shared/redis
  dawarich_db:
    image: postgres:14.2-alpine
    container_name: dawarich_db
    volumes:
      - db_data:/var/lib/postgresql/data
      - shared_data:/var/shared
    networks:
      - dawarich
    environment:
      POSTGRES_USER: postgres
      POSTGRES_PASSWORD: password
  dawarich_app:
    image: freikin/dawarich:latest
    container_name: dawarich_app
    volumes:
      - gem_cache:/usr/local/bundle/gems
      - public:/var/app/public
    networks:
      - dawarich
    ports:
      - 3000:3000
    stdin_open: true
    tty: true
    entrypoint: dev-entrypoint.sh
    command: ['bin/dev']
    restart: on-failure
    environment:
      RAILS_ENV: development
      REDIS_URL: redis://dawarich_redis:6379/0
      DATABASE_HOST: dawarich_db
      DATABASE_USERNAME: postgres
      DATABASE_PASSWORD: password
      DATABASE_NAME: dawarich_development
      MIN_MINUTES_SPENT_IN_CITY: 60
      APPLICATION_HOST: localhost
      TIME_ZONE: Europe/Brussels
    depends_on:
      - dawarich_db
      - dawarich_redis
  dawarich_sidekiq:
    image: freikin/dawarich:latest
    container_name: dawarich_sidekiq
    volumes:
      - gem_cache:/usr/local/bundle/gems
      - public:/var/app/public
    networks:
      - dawarich
    stdin_open: true
    tty: true
    entrypoint: dev-entrypoint.sh
    command: ['sidekiq']
    restart: on-failure
    environment:
      RAILS_ENV: development
      REDIS_URL: redis://dawarich_redis:6379/0
      DATABASE_HOST: dawarich_db
      DATABASE_USERNAME: postgres
      DATABASE_PASSWORD: password
      DATABASE_NAME: dawarich_development
      APPLICATION_HOST: localhost
      BACKGROUND_PROCESSING_CONCURRENCY: 10
    depends_on:
      - dawarich_db
      - dawarich_redis
      - dawarich_app

volumes:
  db_data:
    driver: local # Define the driver and options under the volume name
    driver_opts:
      type: none
      device: /volume1/docker/dawarich/db_data
      o: bind
  gem_cache:
    driver: local # Define the driver and options under the volume name
    driver_opts:
      type: none
      device: /volume1/docker/dawarich/gem_cache
      o: bind
  shared_data:
    driver: local # Define the driver and options under the volume name
    driver_opts:
      type: none
      device: /volume1/docker/dawarich/shared_data
      o: bind
  public:
    driver: local # Define the driver and options under the volume name
    driver_opts:
      type: none
      device: /volume1/docker/dawarich/public
      o: bind
Gebruikersavatar
Splitter
Elite Poster
Elite Poster
Berichten: 5866
Lid geworden op: 10 maa 2010, 12:30
Uitgedeelde bedankjes: 68 keer
Bedankt: 598 keer
Te Koop forum

MaT schreef: 17 jun 2024, 21:41 Kan dit even nauwkeurig werken? Google timeline was daar toch niet niet genoeg voor.
de nauwkeurigheid zal denk ik gelijk zijn, gezien je dezelfde apps kan gebruiken (en het grotendeels toch je toestel en de app is dat de nauwkeurigheid zal bepalen)
ik heb met google altijd meer nauwkeurigheid gehad als met traccar (draaien en loggen allebei voor mij).
de webpagina zelf is toch niets meer dan het tonen van geimporteerde/opgeslagen punten.
Tazmanian79 schreef: 18 jun 2024, 09:12 Ik heb een bestand van 1Gb gegevens vanaf 2011 en nu 15h zit ik nog maar aan begin 2013 wat verwerkt is. Dus nog 11j te gaan. Zal dus nog wel enkele dagen duren eer alles is geimporteerd.
let op: het importeren gaat relatief redelijk (wel idd dagje of 2), maar het probleem komt hem na de echte import, waarbij die reverse geocoding uitvoert.
eigenlijk ben je een service aan het ddos'en, en die service rate-limit je dan, waardoor het reverse geocoden trager/slechter verloopt.

en daar komt het probleem eigenlijk grotendeels van, heb ik gemerkt.
BMaster
Elite Poster
Elite Poster
Berichten: 951
Lid geworden op: 01 apr 2005, 16:46
Uitgedeelde bedankjes: 42 keer
Bedankt: 45 keer

Interessant, hier had ik nog nooit aan gedacht :-)
Wat zijn de ervaringen met android apps die de locatie aan dawarich doorgeven? Verbruiken die niet teveel batterij?
Plaats reactie

Terug naar “Software en apps”