Naciśnij ESC, aby zamknąć

Traccar: Przewodnik instalacji na Synology w Dockerze

Cześć!

W niniejszym artykule omówimy, jak zainstalować Traccar na serwerze Synology, wykorzystując konteneryzację w Dockerze. Całą instalację przeprowadzimy przy użyciu Docker Compose za pośrednictwem narzędzia Portainer. Następnie skonfigurujemy odwrotne proxy przy użyciu już zainstalowanego Nginx Proxy Manager. Aby uzyskać dostęp do Traccara po nazwie domeny w sieci lokalnej, skonfigurujemy przepisywanie DNS przy użyciu AdGuard Home.

Czym jest Traccar?

Przewodnik instalacji Traccar na Synology w Dockerze

Traccar to narzędzie typu open-source do śledzenia pojazdów, które umożliwia monitorowanie i zarządzanie flotą. Działa ono na zasadzie serwera GPS, co pozwala na zbieranie danych z urządzeń GPS oraz innych sensorów. Następnie system prezentuje te informacje w webowym interfejsie. Co więcej, Traccar pozwala śledzić lokalizację pojazdów w czasie rzeczywistym, analizować historię tras, a także monitorować zużycie paliwa i inne parametry.

Przygotowanie

W celu przygotowania poradnika, przyjmijmy na początek nazwy domen oraz identyfikatory opisane poniżej. Pamiętaj jednak, że w trakcie konfiguracji należy dostosować ustawienia zgodnie z własnymi potrzebami.

  • Pełna nazwa domeny (FQDN) Traccar: https://traccar.xyz.com,
  • Zainstalowany na Synology poprzez Docker: Ngninx Proxy Manager, AdGuard Home oraz Portainer,
  • Zainstalowany na Synology poprzez Centrum pakietów: Cointaner Manager,
  • Na serwerze DHCP routera, wskazany adres IP serwera DNS (AdGuard Home) zainstalowany na Synology.

Czym jest Docker Compose?

Docker Compose stanowi narzędzie umożliwiające definicję oraz zarządzanie wieloma kontenerami Docker jednocześnie. Poprzez opisanie konfiguracji aplikacji, usług i zależności w pliku YAML, Docker Compose ułatwia jednolite tworzenie, uruchamianie i skalowanie aplikacji złożonych z wielu kontenerów. To narzędzie upraszcza proces konfiguracji środowiska deweloperskiego, testowego lub produkcyjnego, gwarantując jednocześnie spójność w zarządzaniu kontenerami i ich parametrami. Dzięki Docker Compose możliwe jest zdefiniowanie kompleksowej infrastruktury aplikacji w jednym pliku, co z kolei ułatwia współpracę i replikację środowisk w różnych scenariuszach.

Krok 1 – Konfiguracja w Synology

  • Zaloguj się na swoim serwerze plików i otwórz aplikację File Station.
  • W folderze współdzielonym o nazwie docker, utwórz nowy folder i nazwij go traccar

Przewodnik instalacji Traccar na Synology w Dockerze

  • Wewnątrz folderu traccar utwórz dwa dodatkowe foldery – config oraz mysql

Przewodnik instalacji Traccar na Synology w Dockerze

  • Przejdź do folderu config i utwórz tam foldery data i logs.
  • Czynności związane z File Station na DSM zostały już ukończone. Obecnie brakuje nam jeszcze pliku konfiguracyjnego. Aby go uzyskać, pobierzemy go za pomocą SSH, będąc zalogowanym na naszym Synology. Więcej informacji znajdziesz pod tym linkiem.
  • Jeśli nie masz jeszcze włączonego SSH na swoim Synology, wykonaj poniższe kroki
    • Przejdź do Panelu Sterowania, a następnie w sekcji Łączność wybierz Terminal i SNMP;

    • Kliknij Włącz usługę SSH i ustaw dowolny wysoki port np. 45000.

Synology SSH

    • Zapisz ustawienia i przejdź do zalogowania się po SSH do naszego Synology.

Na systemy operacyjne Microsoft Windows polecam PuTTY, z kolei na systemy operacyjne Apple MacOS polecam Termius.

  • Osobiście korzystam z MacOS, stąd posłużę się Termiusem. Poniższą czynność wykonujemy na prawach roota,
  • Zaloguj się na swoje konto do Synology po SSH. 
sudo su -
  • Pobierz plik traccar.xml
docker run \
--rm \
--entrypoint cat \
traccar/traccar:latest \
/opt/traccar/conf/traccar.xml > /volume1/docker/traccar/config/traccar.xml

Poczekaj chwilę, aż plik zostanie pobrany. Po zakończeniu tego procesu możemy kontynuować z konfiguracją w Portainerze.

Krok 2 – Konfiguracja Docker Compose w Portainerze

  • Zaloguj się na swoje konto i przejdź do interfejsu administracyjnego.
    • Czy używasz systemu jednokrotnego logowania Authentik? Ułatw sobie proces logowania, integrując Portainera z Authentikiem za pomocą tej instrukcji.
  • Wybierz z dashboardu Stacks.

Przewodnik instalacji Traccar na Synology w Dockerze

  • Z prawego górnego rogu (pod twoim loginem) wybierz Add stack.

Przewodnik instalacji Traccar na Synology w Dockerze

  • Wypełnij tworzenie pliku Docker Compose przy użyciu następujących wartości:
    • Name: traccar
    • Build method: Web editor
    • Web editor: skopiuj zawartość opisaną poniżej i wklej
version: "3.9"
services:
  mysql:
    image: mysql:5.7
    container_name: traccar_mysql
    command: --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --skip-log-bin  --explicit_defaults_for_timestamp=on
    hostname: traccar-mysql
    volumes:
      - /volume1/docker/traccar/mysql:/var/lib/mysql
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: traccar
      MYSQL_DATABASE: traccar
      MYSQL_USER: traccaruser
      MYSQL_PASSWORD: traccar
    
  traccar:
    depends_on:
      - mysql
    image: traccar/traccar:latest
    container_name: traccar_server
    hostname: traccar-server
    volumes:
      - /volume1/docker/traccar/config/logs:/opt/traccar/logs:rw
      - /volume1/docker/traccar/config/traccar.xml:/opt/traccar/conf/traccar.xml:ro
      - /volume1/docker/traccar/config/data:/opt/traccar/data:rw
    ports:
      - "8082:8082"
    restart: always
    environment:
      CONFIG_USE_ENVIRONMENT_VARIABLES: "true"
      DATABASE_DRIVER: "com.mysql.cj.jdbc.Driver"
      DATABASE_URL: "jdbc:mysql://traccar-mysql:3306/traccar?zeroDateTimeBehavior=round&serverTimezone=UTC&allowPublicKeyRetrieval=true&useSSL=false&allowMultiQueries=true&autoReconnect=true&useUnicode=yes&characterEncoding=UTF-8&sessionVariables=sql_mode=''"
      DATABASE_USER: traccaruser
      DATABASE_PASSWORD: traccar
  • Kliknij przycisk Deploy the stack i poczekaj, aż Portainer pobierze zawartość i utworzy kontenery.
  • Jeśli wszystko przebiegnie pomyślnie, w prawym górnym rogu ekranu pojawi się komunikat Success: Stack successfully deployed, a nastepnie w liście kontenerów pojawią się dwa nowo utworzone kontenery.

Portainer

  • Aby obecnie uzyskać dostęp do Traccara, wpisz w przeglądarkę adres: http://IP-ADRES-SYNOLOGY:8082

Krok 3 – Konfiguracja w Nginx Proxy Manager

W poniższej instrukcji dostęp do Traccar zostanie skonfigurowany po protokole HTTP (bez SSL).

  • Zaloguj się do konta administratora w Nginx Proxy Manager.
  • Przejdź do Hosts.

Pulpit Nginx Proxy Manager

  • W prawym górnym rogu kliknij Add Proxy Hosts.

Add Proxy Host w Nginx Proxy Manager

  • Uzupełnij parametry następującymi wartościami:
    • Domain Names: traccar.xyz.com
    • Scheme: http
    • Forward Hostname/IP: IP-ADRES-SYNOLOGY
    • Forward Port: 8082

Edit Proxy Host w Nginx Proxy Manager

  • Zapisz konfigurację przyciskiem Save.

Web access po HTTPS (Certyfikat SSL)

Jeżeli posiadasz wgrany certyfikat SSL dla swojej domeny obsługujący subdomeny (certyfikat typu Wildcard):

  • W oknie Edit Proxy Host na zakładce Details zaznacz:
    • Cache Assets,
    • Websockets Support,
    • oraz Block Common Exploits.

Edit Proxy Host w Nginx Proxy Manager

  • Następnie przejdź do zakładki SSL, wybierz swój certyfikat SSL i zaznacz wszystkie dostępne opcje dodatkowe:
    • Force SSL,
    • HTTP/2 Support,
    • HSTS Enabled,
    • oraz HSTS Subdomains.

Edit Proxy Host, SSL w Nginx Proxy Manager

Krok 4 – Konfiguracja w AdGuard Home

Aby uzyskać dostęp z naszego komputera do Traccara poprzez zdefiniowaną w Proxy Managerze nazwę domeny (np. traccar.xyz.com) w naszej sieci lokalnej, konieczne jest skonfigurowanie serwera DNS, aby wskazywał na lokalizację tej strony.

AdGuard Home Pulpit

  • Zaloguj się do panelu administracyjnego AdGuard Home.
  • Przejdź do zakładki Filtry, a następnie z menu wybierz opcję Przepisywanie DNS.

Przepisywanie DNS

  • Kliknij Dodaj przepisywanie DNS, a następnie wypełnij pola z następującymi wartościami:
    • Wpisz nazwę domeny, który chcesz przepisać: traccar.xyz.com
    • Adres IP: IP-ADRES-SYNOLOGY

Dodaj przepisywanie DNS

  • Gotowe! Poczekaj chwilę, aż konfiguracja zostanie zapisana. Po zakończeniu procesu, dostęp do serwera będzie możliwy pod adresem traccar.xyz.com. 🚀

Krok 5 – Konfiguracja konfiguracji z trackerem GPS

Dotarliśmy do kroku 5, ale przygoda z instalacją i konfiguracją nie kończy się tutaj. Aby dowiedzieć się więcej o dalszych krokach i możliwościach konfiguracyjnych, serdecznie Cię zapraszam do przeczytania naszego następnego artykułu. Tam czekają na Ciebie cenne wskazówki, które pozwolą Ci uruchomić serwer w podstawowym stopniu. Kliknij tutaj i kontynuuj swoją podróż!

Dodatkowe źródła i Informacje

W celu dalszego zgłębienia tematu i uzyskania szczegółowych informacji, polecam sprawdzenie poniższych linków. Są one wartościowymi źródłami, które zostały wykorzystane podczas opracowywania tego poradnika.

Przeczytaj także

 

Filip Chochół

Filip Chochol runs two blogs: personal “chochol.io” and together with his girlfriend “Warsaw Travelers” about travel. He specializes in IT resource management and technical support, and has been active in the field of cyber security awareness for almost two years. A proponent of open-source technologies, he previously worked in the film and television industry in the camera division (2013-2021). After hours, he develops interests in smart homes and networking.

Komentarze (4)

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *


This site uses Akismet to reduce spam. Learn how your comment data is processed.