March 3, 20251 yr Hallo zusammen, Vielleicht hat jemand Interesse daran, zusammen eine lauffähige Version von Dawarich* auf UnRaid zum laufen zu bringen. Ich bin schon für meine Verhältnisse weit gekommen und scheitere jedoch auf den letzten Metern. Unten habe ich mal meine docker-compose.yml beigefügt. Nach recht langem Suchen habe ich herausgefunden das ich mit den beiden im UnRaid App Store angebotenen Apps für Dawarich nicht weiter komme. Ich fand keine Anleitung für eine Konfiguration. Zu viele Fragen blieben offen. Nun bin ich auf das UnRaid Plugin "Docker Compose Manager" gestoßen. Dies sollte es doch ermöglichen, per docker-compose.yml eine lauffähige Version von Dawarich zu erstellen. Nachdem ich hier https://github.com/Freika/dawarich/discussions/150 auf eine Seite mit einem für UnRaid geeigneten Template gestoßen bin, habe ich es mal ausprobiert. Es müssen ggf. Tabulatoren gegen Leerzeichen ausgetauscht werden. Auch die im Kommentar genannte Änderung sollte eingepflegt werden. Nachdem ich alle Fehlermeldungen des Managers ausgemerzt habe, wurden auch alle vier Container angelegt. Jedoch gab es eine Fehlermeldung während des Starts: [+] Running 4/5 ✔ Network dawarich_default Created 0.2s ✔ Container dawarich_db Started 0.6s ✔ Container dawarich-redis Started 0.6s ⠇ Container dawarich_app Starting 1.2s ✔ Container dawarich_sidekiq Created 0.0s Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: exec: "dev-entrypoint.sh": executable file not found in $PATH: unknown Tja, und da komme ich nicht weiter. Mein Wissen diesbezüglich reicht nicht weit. In der vom Autor bereitgestellten docker-compose sind Einträge sog. health checks eingefügt. Wenn ich dies jedoch einfüge, bekomme ich vom Manager viele Fehlermeldungen die ich nicht beheben kann da mir das Wissen dazu fehlt. Also habe ich dies auch rausgelassen. Was sie bringen und ob sie hilfreich sind kann ich nicht beurteilen. Beim Compose Up kann man wohl noch für jeden Container passende Icons vergeben. Doch wie? Eine Anleitung habe ich nicht gefunden. Über Hilfe würde ich mich sehr freuen. Vielen Dank Hier meine docker-compose.yml services: dawarich_redis: image: redis:7.0-alpine container_name: dawarich-redis command: redis-server volumes: - /mnt/user/appdata/compose-dawarich/shared:/data dawarich_db: image: postgres:14.2-alpine container_name: dawarich_db volumes: - /mnt/user/appdata/compose-dawarich/db:/var/lib/postgresql/data - /mnt/user/appdata/compose-dawarich/shared:/var/shared environment: POSTGRES_USER: postgres POSTGRES_PASSWORD: mein-passwort dawarich_app: image: freikin/dawarich:latest container_name: dawarich_app volumes: - /mnt/user/appdata/compose-dawarich/gems:/usr/local/bundle/gems - /mnt/user/appdata/compose-dawarich/public:/var/app/public 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: mein-passwort DATABASE_NAME: dawarich_development MIN_MINUTES_SPENT_IN_CITY: 60 APPLICATION_HOST: localhost APPLICATION_HOSTS: localhost TIME_ZONE: Europe/Berlin APPLICATION_PROTOCOL: http logging: driver: json-file options: max-size: 100m max-file: "5" depends_on: - dawarich_db - dawarich_redis dawarich_sidekiq: image: freikin/dawarich:latest container_name: dawarich_sidekiq volumes: - /mnt/user/appdata/compose-dawarich/gems:/usr/local/bundle/gems - /mnt/user/appdata/compose-dawarich/public:/var/app/public 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: mein-passwort DATABASE_NAME: dawarich_development APPLICATION_HOST: localhost APPLICATION_HOSTS: localhost BACKGROUND_PROCESSING_CONCURRENCY: 10 APPLICATION_PROTOCOL: http logging: driver: json-file options: max-size: 100m max-file: "5" depends_on: - dawarich_db - dawarich_redis - dawarich_app *Meine eigene Beschreibung: Dawarich = da war ich = eigener GPS-Daten-logger-Server der von einer App geloggte GPS Daten aufnimmt und grafisch darstellt wo man alles schon gewesen war.
March 3, 20251 yr Solution Ich habe es auch mit dem docker-compose plugin gemacht. Hier meine funktionierende docker-compose.yml networks: dawarich: services: dawarich_redis: image: redis:7.0-alpine container_name: dawarich_redis command: redis-server networks: - dawarich volumes: - /mnt/cache/appdata/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: - /mnt/cache/appdata/dawarich_db_data:/var/lib/postgresql/data - /mnt/cache/appdata/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: image: freikin/dawarich:latest container_name: dawarich_app volumes: - /mnt/cache/appdata/dawarich_public:/var/app/public - /mnt/cache/appdata/dawarich_watched:/var/app/tmp/imports/watched networks: - dawarich ports: - 30000:3000 # - 9394:9394 # Prometheus exporter, uncomment if needed stdin_open: true tty: true entrypoint: web-entrypoint.sh command: ['bin/rails', 'server', '-p', '3000', '-b', '::'] 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_HOSTS: "meine-gps-domain.de,127.0.0.1" 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:3000/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: - /mnt/cache/appdata/dawarich_public:/var/app/public - /mnt/cache/appdata/dawarich_watched:/var/app/tmp/imports/watched networks: - dawarich stdin_open: true tty: true entrypoint: sidekiq-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_HOSTS: "meine-pgs-domain.de,127.0.0.1" 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: Nur die domain (meine-gps-domain.de) durch die Eigene ersetzen.
March 3, 20251 yr Author @Archonw, vielen, vielen Dank. Genau so hat es funktioniert. Ich musste nur die Volumes Pfade und die Domain anpassen und schwups läuft es. Da muss erst jemand kommen der den Durchblick hat, so wie Archonw. Nun kann ich damit "rumspielen" bis ich es richtig nutze. Und bei Gelegenheit muss ich heruasfinden wie ich es hübsch mache, also die passenden Icon finde und wie ich sie einbinde. Danke
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.