Dawarich not showing any ui
Hi there i'm trying to use dawarich and have no idea why its not even showing a ui at the designated ip+port
Is there some obvious error in my compose that i miss? My logs dont print a single error
`networks: dawarich: services: dawarich_redis: image: redis:7.0-alpine container_name: dawarich_redis command: redis-server networks: - dawarich volumes: - /root/dawarich/dawarich_shared:/data restart: always healthcheck: test: [ "CMD", "redis-cli", "--raw", "incr", "ping" ] interval: 10s retries: 5 start_period: 30s timeout: 10s dawarich_db: image: postgis/postgis:14-3.5-alpine shm_size: 1G container_name: dawarich_db volumes: - /root/dawarich/dawarich_db_data:/var/lib/postgresql/data - /root/dawarich/dawarich_shared:/var/shared # - ./postgresql.conf:/etc/postgresql/postgresql.conf # Optional, uncomment if you want to use a custom config networks: - dawarich environment: POSTGRES_USER: postgres POSTGRES_PASSWORD: password restart: always healthcheck: test: [ "CMD-SHELL", "pg_isready -U postgres -d dawarich_development" ] interval: 10s retries: 5 start_period: 30s timeout: 10s # command: postgres -c config_file=/etc/postgresql/postgresql.conf # Use custom config, uncomment if you want to use a custom config dawarich_app: labels: - homepage.group=Tracking - homepage.name=DaWarIch - homepage.icon=emby.png - homepage.href=http://192.168.169.41:3700 - homepage.description=Tracking von Wegen image: freikin/dawarich:latest container_name: dawarich_app volumes: - /root/dawarich/dawarich_public:/var/app/public - /root/dawarich/dawarich_watched:/var/app/tmp/imports/watched - /root/dawarich/dawarich_storage:/var/app/storage networks: - dawarich ports: - 3700:3000 # - 9394:9394 # Prometheus exporter, uncomment if needed stdin_open: true tty: true entrypoint: web-entrypoint.sh command: ['bin/rails', 'server', '-p', '3700', '-b', 'localhost'] restart: on-failure environment: SELF_HOSTED: "true" 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_HOSTS: localhost TIME_ZONE: Europe/Berlin APPLICATION_PROTOCOL: http DISTANCE_UNIT: km PROMETHEUS_EXPORTER_ENABLED: false PROMETHEUS_EXPORTER_HOST: 0.0.0.0 PROMETHEUS_EXPORTER_PORT: 9394 ENABLE_TELEMETRY: false # More on telemetry: https://dawarich.app/docs/tutorials/telemetry logging: driver: "json-file" options: max-size: "100m" max-file: "5" healthcheck: test: [ "CMD-SHELL", "wget -qO - http://127.0.0.1:3700/api/v1/health | grep -q '"status"\s*:\s*"ok"'" ] interval: 10s retries: 30 start_period: 30s timeout: 10s depends_on: dawarich_db: condition: service_healthy restart: true dawarich_redis: condition: service_healthy restart: true deploy: resources: limits: cpus: '0.50' # Limit CPU usage to 50% of one core memory: '4G' # Limit memory usage to 4GB dawarich_sidekiq: image: freikin/dawarich:latest container_name: dawarich_sidekiq volumes: - /root/dawarich/dawarich_public:/var/app/public - /root/dawarich/dawarich_watched:/var/app/tmp/imports/watched - /root/dawarich/dawarich_storage:/var/app/storage networks: - dawarich stdin_open: true tty: true entrypoint: sidekiq-entrypoint.sh command: ['sidekiq'] restart: on-failure environment: SELF_HOSTED: "true" 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_HOSTS: localhost BACKGROUND_PROCESSING_CONCURRENCY: 10 APPLICATION_PROTOCOL: http DISTANCE_UNIT: km PROMETHEUS_EXPORTER_ENABLED: false PROMETHEUS_EXPORTER_HOST: dawarich_app PROMETHEUS_EXPORTER_PORT: 9394 ENABLE_TELEMETRY: false # More on telemetry: https://dawarich.app/docs/tutorials/telemetry logging: driver: "json-file" options: max-size: "100m" max-file: "5" healthcheck: test: [ "CMD-SHELL", "bundle exec sidekiqmon processes | grep $${HOSTNAME}" ] interval: 10s retries: 30 start_period: 30s timeout: 10s depends_on: dawarich_db: condition: service_healthy restart: true dawarich_redis: condition: service_healthy restart: true dawarich_app: condition: service_healthy restart: true deploy: resources: limits: cpus: '0.50' # Limit CPU usage to 50% of one core memory: '4G' # Limit memory usage to 4GB
volumes: dawarich_db_data: dawarich_shared: dawarich_public: dawarich_watched: dawarich_storage:`
This is a network or reverse proxy issue, not a Dawarich one. Otherwise you would see new lines in the logs
Hello @Freika As described in #1076 I got my instance of dawarich running once with the workaround and I was able to access it over the browser.
However, after stopping the containers I have also the problem, that I cannot access dawarich with the browser and dont see any UI:
- I am using the provided docker-compose.yml
- I only changed the ports from 3000 to 3003 as port 3000 was already in use from an other container
docker compose up -dleads to running and healthy containers- No proxy is running. I try to access dawarich with
:3003 - Browser shows "connection failed"
Logs of dawarich_app:
D, [2025-04-25T20:15:20.770882 #118] DEBUG -- : User Load (0.3ms) SELECT "users".* FROM "users" WHERE "users"."api_key" IS NULL LIMIT $1 [["LIMIT", 1]] D, [2025-04-25T20:15:20.771558 #118] DEBUG -- : ↳ app/controllers/api_controller.rb:22:in 'ApiController#current_api_user' I, [2025-04-25T20:15:20.772054 #118] INFO -- : {"method":"GET","path":"/api/v1/health","format":"/","controller":"Api::V1::HealthController","action":"index","status":200,"allocations":894,"duration":14.42,"view":0.14,"db":0.3} D, [2025-04-25T20:15:30.888833 #108] DEBUG -- : User Load (0.3ms) SELECT "users".* FROM "users" WHERE "users"."api_key" IS NULL LIMIT $1 [["LIMIT", 1]] D, [2025-04-25T20:15:30.889610 #108] DEBUG -- : ↳ app/controllers/api_controller.rb:22:in 'ApiController#current_api_user' I, [2025-04-25T20:15:30.953265 #108] INFO -- : {"method":"GET","path":"/api/v1/health","format":"/","controller":"Api::V1::HealthController","action":"index","status":200,"allocations":894,"duration":86.93,"view":0.13,"db":0.28} D, [2025-04-25T20:15:41.051489 #108] DEBUG -- : User Load (0.3ms) SELECT "users".* FROM "users" WHERE "users"."api_key" IS NULL LIMIT $1 [["LIMIT", 1]] D, [2025-04-25T20:15:41.052687 #108] DEBUG -- : ↳ app/controllers/api_controller.rb:22:in 'ApiController#current_api_user' I, [2025-04-25T20:15:41.053129 #108] INFO -- : {"method":"GET","path":"/api/v1/health","format":"/","controller":"Api::V1::HealthController","action":"index","status":200,"allocations":893,"duration":6.38,"view":0.11,"db":0.24} D, [2025-04-25T20:15:51.228284 #108] DEBUG -- : User Load (0.2ms) SELECT "users".* FROM "users" WHERE "users"."api_key" IS NULL LIMIT $1 [["LIMIT", 1]] D, [2025-04-25T20:15:51.229864 #108] DEBUG -- : ↳ app/controllers/api_controller.rb:22:in 'ApiController#current_api_user' I, [2025-04-25T20:15:51.230286 #108] INFO -- : {"method":"GET","path":"/api/v1/health","format":"/","controller":"Api::V1::HealthController","action":"index","status":200,"allocations":893,"duration":7.08,"view":0.11,"db":0.24} D, [2025-04-25T20:16:01.339002 #108] DEBUG -- : User Load (1.1ms) SELECT "users".* FROM "users" WHERE "users"."api_key" IS NULL LIMIT $1 [["LIMIT", 1]] D, [2025-04-25T20:16:01.340094 #108] DEBUG -- : ↳ app/controllers/api_controller.rb:22:in 'ApiController#current_api_user' I, [2025-04-25T20:16:01.341617 #108] INFO -- : {"method":"GET","path":"/api/v1/health","format":"/","controller":"Api::V1::HealthController","action":"index","status":200,"allocations":893,"duration":40.78,"view":0.12,"db":0.21}
Logs of dawarich_sidekiq:
D, [2025-04-25T20:06:43.676379 #8] DEBUG -- : (0.3ms) SELECT ST_Distance(ST_GeomFromEWKT($1)::geography, ST_GeomFromEWKT($2)::geography) [[nil, "POINT (-8.546909 42.882125)"], [nil, "POINT (-8.546909 42.882125)"]] D, [2025-04-25T20:06:43.677205 #8] DEBUG -- : ↳ app/models/concerns/distanceable.rb:62:in 'block in Distanceable::ClassMethods#calculate_distance_for_array' D, [2025-04-25T20:06:43.692085 #8] DEBUG -- : Point Load (6.3ms) SELECT "points"."id", "points"."battery_status", "points"."ping", "points"."battery", "points"."tracker_id", "points"."topic", "points"."altitude", "points"."longitude", "points"."velocity", "points"."trigger", "points"."bssid", "points"."ssid", "points"."connection", "points"."vertical_accuracy", "points"."accuracy", "points"."timestamp", "points"."latitude", "points"."mode", "points"."inrids", "points"."in_regions", "points"."import_id", "points"."city", "points"."country", "points"."created_at", "points"."updated_at", "points"."user_id", "points"."geodata", "points"."visit_id", "points"."reverse_geocoded_at", "points"."course", "points"."course_accuracy", "points"."external_track_id", "points"."lonlat", "points"."lonlat", "points"."timestamp", "points"."city", "points"."country" FROM "points" WHERE "points"."user_id" = $1 AND "points"."timestamp" BETWEEN $2 AND $3 ORDER BY "points"."timestamp" ASC [["user_id", 1], ["timestamp", 1727740800], ["timestamp", 1730332800]] D, [2025-04-25T20:06:43.693094 #8] DEBUG -- : ↳ app/services/countries_and_cities.rb:13:in 'Enumerable#reject' D, [2025-04-25T20:06:43.776244 #8] DEBUG -- : Stat Create (1.1ms) INSERT INTO "stats" ("year", "month", "distance", "toponyms", "created_at", "updated_at", "user_id", "daily_distance") VALUES ($1, $2, $3, $4, $5, $6, $7, $8) RETURNING "id" [["year", 2024], ["month", 10], ["distance", 8], ["toponyms", "[]"], ["created_at", "2025-04-25 20:06:43.749072"], ["updated_at", "2025-04-25 20:06:43.749072"], ["user_id", 1], ["daily_distance", "[[1,0],[2,0],[3,0],[4,0],[5,0],[6,0],[7,0],[8,0],[9,0],[10,0],[11,0],[12,8.09],[13,0],[14,0],[15,0],[16,0],[17,0],[18,0],[19,0],[20,0],[21,0],[22,0],[23,0],[24,0],[25,0],[26,0],[27,0],[28,0],[29,0],[30,0],[31,0]]"]] D, [2025-04-25T20:06:43.777569 #8] DEBUG -- : ↳ app/services/stats/calculate_month.rb:38:in 'block in Stats::CalculateMonth#update_month_stats' D, [2025-04-25T20:06:43.788234 #8] DEBUG -- : TRANSACTION (2.3ms) COMMIT D, [2025-04-25T20:06:43.789291 #8] DEBUG -- : ↳ app/services/stats/calculate_month.rb:29:in 'Stats::CalculateMonth#update_month_stats' I, [2025-04-25T20:06:43.846325 #8] INFO -- : Performed Stats::CalculatingJob (Job ID: 916996e2-3695-4e70-b375-e06e69634c1d) from Sidekiq(stats) in 6818.68ms I, [2025-04-25T20:06:43.848256 #8] INFO -- : done D, [2025-04-25T20:06:48.569865 #8] DEBUG -- : Flushed 4 metrics ⚠️ Starting Sidekiq in development environment ⚠️ ⏳ Waiting for database to be ready... ✅ PostgreSQL is ready! [dotenv] Set DATABASE_PORT [dotenv] Loaded .env.development I, [2025-04-25T20:08:49.248593 #8] INFO -- : Booted Rails 8.0.1 application in development environment I, [2025-04-25T20:08:49.248755 #8] INFO -- : Running in ruby 3.4.1 (2024-12-25 revision 48d4efcb85) +YJIT +PRISM [x86_64-linux-musl] I, [2025-04-25T20:08:49.248798 #8] INFO -- : See LICENSE and the LGPL-3.0 for licensing details. I, [2025-04-25T20:08:49.248829 #8] INFO -- : Upgrade to Sidekiq Pro for more features and support: https://sidekiq.org I, [2025-04-25T20:08:49.249103 #8] INFO -- : Sidekiq 7.3.9 connecting to Redis with options {size: 10, pool_name: "internal", url: "redis://dawarich_redis:6379/0"} I, [2025-04-25T20:08:49.253275 #8] INFO -- : Sidekiq 7.3.9 connecting to Redis with options {size: 10, pool_name: "default", url: "redis://dawarich_redis:6379/0"} D, [2025-04-25T20:08:49.821786 #8] DEBUG -- : Firing startup event D, [2025-04-25T20:08:52.249213 #8] DEBUG -- : Client Middleware: D, [2025-04-25T20:08:52.249285 #8] DEBUG -- : Server Middleware: Sidekiq::Metrics::Middleware, Sidekiq::Job::InterruptHandler I, [2025-04-25T20:08:52.249318 #8] INFO -- : Starting processing, hit Ctrl-C to stop D, [2025-04-25T20:08:52.249595 #8] DEBUG -- : {labels: #<Set: {}>, require: ".", environment: "development", concurrency: 10, timeout: 25, poll_interval_average: nil, average_scheduled_poll_interval: 5, on_complex_arguments: :raise, iteration: {max_job_runtime: nil, retry_backoff: 0}, error_handlers: [#<Proc:0x000079ec5ab7b158 /var/app/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.9/lib/sidekiq/config.rb:43 (lambda)>], death_handlers: [], lifecycle_events: {startup: [], quiet: [], shutdown: [], heartbeat: [], beat: [#<Proc:0x000079ec5a9ac2a0 /var/app/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.9/lib/sidekiq/metrics/tracking.rb:145>]}, dead_max_jobs: 10000, dead_timeout_in_seconds: 15552000, reloader: #<Sidekiq::Rails::Reloader @app=Dawarich::Application>, backtrace_cleaner: #<Proc:0x000079ec5804d288 /var/app/vendor/bundle/ruby/3.4.0/gems/sidekiq-7.3.9/lib/sidekiq/rails.rb:60 (lambda)>, queues: ["default", "imports", "exports", "stats", "reverse_geocoding", "visit_suggesting"], config_file: "./config/sidekiq.yml", tag: "app", identity: "fecd53588684:8:dee1e8e18624", cron_poll_interval: 30, fetch_class: Sidekiq::LimitFetch} D, [2025-04-25T20:08:52.330726 #8] DEBUG -- : Firing heartbeat event I, [2025-04-25T20:08:52.451131 #8] INFO -- : start I, [2025-04-25T20:08:52.451351 #8] INFO -- : start I, [2025-04-25T20:08:52.539631 #8] INFO -- : Performing Cache::PreheatingJob (Job ID: ee8988dd-1e59-487e-8ebc-29c7800635cb) from Sidekiq(default) enqueued at 2025-04-25T20:08:37.673753335Z I, [2025-04-25T20:08:52.610185 #8] INFO -- : Performing Cache::CleaningJob (Job ID: 6537da5a-d51e-4f3a-8eec-1287ab2db968) from Sidekiq(default) enqueued at 2025-04-25T20:08:37.669789620Z I, [2025-04-25T20:08:52.816510 #8] INFO -- : Cleaning cache... D, [2025-04-25T20:08:53.346367 #8] DEBUG -- : User Load (3.3ms) SELECT "users".* FROM "users" ORDER BY "users"."id" ASC LIMIT $1 [["LIMIT", 1000]] D, [2025-04-25T20:08:53.352407 #8] DEBUG -- : ↳ app/services/cache/clean.rb:24:in 'Cache::Clean.delete_years_tracked_cache' D, [2025-04-25T20:08:53.366140 #8] DEBUG -- : User Load (26.3ms) SELECT "users".* FROM "users" ORDER BY "users"."id" ASC LIMIT $1 [["LIMIT", 1000]] D, [2025-04-25T20:08:53.366862 #8] DEBUG -- : ↳ app/jobs/cache/preheating_job.rb:7:in 'Cache::PreheatingJob#perform' I, [2025-04-25T20:08:53.540213 #8] INFO -- : Cache cleaned I, [2025-04-25T20:08:53.546865 #8] INFO -- : Performed Cache::CleaningJob (Job ID: 6537da5a-d51e-4f3a-8eec-1287ab2db968) from Sidekiq(default) in 930.4ms I, [2025-04-25T20:08:53.548846 #8] INFO -- : done D, [2025-04-25T20:08:53.634893 #8] DEBUG -- : (6.4ms) SELECT DISTINCT EXTRACT(YEAR FROM TO_TIMESTAMP(timestamp)) AS year, TO_CHAR(TO_TIMESTAMP(timestamp), 'Mon') AS month FROM points WHERE user_id = 1 ORDER BY year DESC, month ASC
D, [2025-04-25T20:08:53.642547 #8] DEBUG -- : ↳ app/models/user.rb:93:in 'block in User#years_tracked' I, [2025-04-25T20:08:53.651461 #8] INFO -- : Performed Cache::PreheatingJob (Job ID: ee8988dd-1e59-487e-8ebc-29c7800635cb) from Sidekiq(default) in 1111.11ms I, [2025-04-25T20:08:53.656095 #8] INFO -- : done D, [2025-04-25T20:09:02.359817 #8] DEBUG -- : Flushed 4 metrics
It still looks like a connectivity issue: no logs are indicating your browser is making a request to backend