[tutorial] QNAP – Docer, Standalone, SUPLA i SUPLA-Scripts instalacja przez SSH

Awatar użytkownika
lesny8
Posty: 2814
Rejestracja: pn gru 11, 2017 9:43 pm

Czołem suplowicze! ;)

Jak niektórym kolegom wiadomo, po ostatnich aktualizacjach apki ContainerStation w systemie QTS, instalacja własnej instancji serwera Supli przez kreator jest niemożliwa. Można zainstalować aplikację tworząc plik .yml, wtedy kreator nam do niczego niepotrzebny, ale jest jeszcze jedna metoda, którą to możemy potem wykorzystać do instalacji np. Supla-Scripts.

Instancja serwera Supli zainstalowana w ten sposób będzie działać dokładnie tak samo jak zainstalowana poprzez kreator czy plik .yml.

Oczywiście jeśli mamy Suple zainstalowaną przez kreator/plik .yml to nic nie musimy z nią robić. Może dalej sobie działać. Podaję tutaj metodę alternatywną dla użytkowników, którzy mają problem z zainstalowaniem Supli przez kreator, mają minimalne obycie z terminalem i chcą/wolą przez terminal zarządzać swoim serwerem lub takich, którzy chcą mieć w końcu skrypty obok serwera Supli :)


#1
Ustawiamy i instalujemy wszystko co potrzebne

  1. Logujemy się do naszego QNAPa przez www i dodajemy URL do repozytorium QNAPClub w „AppCenter->Ustawienia->Repozytorium aplikacji”
    Nazwa: np. :arrow: qnapclub
    URL: :arrow: https://www.qnapclub.eu/pl/repo.xml
  2. Wyszukujemy i instalujemy Entware-std V1.03
  3. Przechodzimy do „Panel sterowania →Usługi sieci i plików →Telet/SSH” i zaznaczamy „Zezwól na połączenie SSH...”
  4. Uruchamiamy na komputerze terminal(np. putty) i logujemy się do QNAPa kontem admina przez SSH
  5. Aktualizujemy listę pakietów i instalujemy git, nano, mc(opcjonalnie)

    Kod: Zaznacz cały

    opkg update
    opkg install git nano mc

#2
Instalacja serwera Supli
  1. Przechodzimy do lokalizacji domowej np.

    Kod: Zaznacz cały

    cd /share/homes/admin/
  2. Klonujemy repozytorium supla-docker, a potem wchodzimy do środka dostosowujemy pliki, na końcu uruchamiamy skrypt

    Kod: Zaznacz cały

    git clone git://github.com/SUPLA/supla-docker.git
    cd supla-docker/
    sed -i "s+fold+busybox fold+g" supla.sh
    sed -i "s+unless-stopped+always+g" docker-compose.yml
    ./supla.sh
  3. Pierwsze uruchomienie zawsze generuje nam plik .env. Ustawiamy w nim wszystkie zmienne zgodnie z naszymi potrzebami, domena/IP, porty, pierwszy użytkownik itd.

    Kod: Zaznacz cały

    nano .env
  4. Na końcu startujemy skrypt

    Kod: Zaznacz cały

    ./supla.sh start
    trochę czekamy, aż wszystko się pobierze, utworzy, uruchomi i gotowe ;)

    Zazwyczaj po pierwszym uruchamianiu instancji kontener serwera nie może podłączyć się do kontenera bazy, bo ten nie jest jeszcze w pełni gotowy. Czekamy 2-3minuty, żeby nie przerwać etapu tworzenia bazy danych i przeprowadzanych migracji.
    Jeśli nie chcecie czekać 3 minut to możecie zobaczyć co się dzieje w kontenerach przez GUI. W Container Station→Kontener, rozwinąć aplikację supla i kliknąć w kontener supla-cloud, supla-server lub supla-db. Jeśli supla-cloud skończy robić wszystkie migracje na bazie to robimy restart

    Kod: Zaznacz cały

    ./supla.sh restart
    i po tym instancja musi już hulać :D

#3
Instalacja Supla-Scripts

  1. Przechodzimy do lokalizacji domowej np.

    Kod: Zaznacz cały

    cd /share/homes/admin/
  2. Klonujemy repozytorium supla-scripts, a potem wchodzimy do środka i dostosowujemy pliki

    Kod: Zaznacz cały

    git clone git://github.com/fracz/supla-scripts.git
    cd supla-scripts/docker/
    sed -i "s+fold+busybox fold+g" suplascripts.sh
    sed -i "s+unless-stopped+always+g" docker-compose.base.yml
    
  3. Tworzymy plik docker-compose.local.yml

    Kod: Zaznacz cały

    nano docker-compose.local.yml 
    i wypełniamy go zawartością widoczną poniżej. Pozwoli to wpiąć suplascripts do sieci supla_default, aby skrypty widziały naszą instancję Supli i zarejestrowane w niej urządzenia.

    Kod: Zaznacz cały

    version: '3'
    
    services:
      suplascripts:
        networks: [default, supla]
    
    networks:
      default: ~
      supla:
        external:
          name: supla_default
    
  4. Startujemy skrypt suplascripts.sh aby wygenerować .env i edytujemy go ustawiając porty dla http i https

    Kod: Zaznacz cały

    ./suplascripts.sh 
    nano .env
    
  5. Dodajemy jeszcze nasz utworzony wcześniej plik docker-compose.local.yml do zmiennej COMPOSE_FILE w pliku .env

    Kod: Zaznacz cały

    sed -i "s+docker-compose.base.yml+docker-compose.base.yml:docker-compose.local.yml+g" .env
    
  6. Uruchamiamy skrypty

    Kod: Zaznacz cały

    ./suplascripts.sh start
    
Po dłuższej chwili, jak obrazy się wybudują, a kontenery uruchomią możemy połączyć ze sobą instancje Supli i Supla-Scripts za pomocą tokena. Nie zapomnijcie zarejestrować w Cloud urządzeń :D
Ostatnio zmieniony czw gru 30, 2021 9:51 am przez lesny8, łącznie zmieniany 2 razy.
Czekam na kolejne Supla Offline Party 👍
Awatar użytkownika
Goral64
Posty: 3132
Rejestracja: pt gru 27, 2019 6:22 pm
Lokalizacja: Żerniki Wrocławskie
Kontakt:

Dzięki, QNAP już w domku, czekam jeszcze na dyski i zaczynam zabawę....
Widzimy się na Supla Offline Party Season 2 :D

Obrazek
tomekk87
Posty: 185
Rejestracja: pt sie 02, 2019 12:19 pm

Super instrukcja, przyda się. Uruchomię sobie skrypty w kontenerze bo do tej pory miałem na VirtualStation. Przydał by się sposób na automatyczny start kontenerów przy uruchomieniu.

Pozdrawiam
Tomek
Awatar użytkownika
pzygmunt
Posty: 18328
Rejestracja: wt sty 19, 2016 9:26 am
Lokalizacja: Paczków
Kontakt:

tomekk87 pisze: śr gru 29, 2021 7:30 pm Super instrukcja, przyda się. Uruchomię sobie skrypty w kontenerze bo do tej pory miałem na VirtualStation. Przydał by się sposób na automatyczny start kontenerów przy uruchomieniu.

Pozdrawiam
Tomek

Kod: Zaznacz cały

services:
  suplascripts:
       restart: always
tomekk87
Posty: 185
Rejestracja: pt sie 02, 2019 12:19 pm

pzygmunt pisze: śr gru 29, 2021 7:56 pm
tomekk87 pisze: śr gru 29, 2021 7:30 pm Super instrukcja, przyda się. Uruchomię sobie skrypty w kontenerze bo do tej pory miałem na VirtualStation. Przydał by się sposób na automatyczny start kontenerów przy uruchomieniu.

Pozdrawiam
Tomek

Kod: Zaznacz cały

services:
  suplascripts:
       restart: always
Dziękuję, jutro jak będzie czas to biorę się za instalacje.
Awatar użytkownika
lesny8
Posty: 2814
Rejestracja: pn gru 11, 2017 9:43 pm

pzygmunt pisze: śr gru 29, 2021 7:56 pm

Kod: Zaznacz cały

services:
  suplascripts:
       restart: always
:man_facepalming: ale to było proste. Dałbym sobie ręce obcią... yyyy... wrrróć
paznokcie obciąć :) że domyślnie jest always wpisane. Sprawdziłem repo, a tam unless-stopped :shock:
Dziękuję bardzo Przemku za podpowiedź :D
Czekam na kolejne Supla Offline Party 👍
Awatar użytkownika
lukfud
Posty: 2100
Rejestracja: czw lis 23, 2017 11:33 pm
Lokalizacja: Warszawa

Tak samo jak na malinie, kontener suplascripts restartuje się. Powód ten sam, błąd połączenia z bazą.
https://www.facebook.com/groups/supladiy/
Awatar użytkownika
lesny8
Posty: 2814
Rejestracja: pn gru 11, 2017 9:43 pm

lukfud pisze: śr gru 29, 2021 10:04 pm Tak samo jak na malinie, kontener suplascripts restartuje się. Powód ten sam, błąd połączenia z bazą.
What.. :?: :)
Nie bardzo rozumiem co zrobiłeś i o czym piszesz?
Zainstalowałeś skrypty i przeniosłeś bazę z maliny i Ci się restartuje? Hasło do bazy z .env też przeniosłeś?
Czekam na kolejne Supla Offline Party 👍
Awatar użytkownika
lukfud
Posty: 2100
Rejestracja: czw lis 23, 2017 11:33 pm
Lokalizacja: Warszawa

lesny8 pisze: śr gru 29, 2021 10:13 pm What.. :?: :)
Nie bardzo rozumiem co zrobiłeś i o czym piszesz?
Zainstalowałeś skrypty i przeniosłeś bazę z maliny i Ci się restartuje? Hasło do bazy z .env też przeniosłeś?
viewtopic.php?p=115117#p115117
Ani na malinie, ani na qnapie nie uruchamia się kontener suplascripts. Cały czas się restartuje.
https://www.facebook.com/groups/supladiy/
Awatar użytkownika
Goral64
Posty: 3132
Rejestracja: pt gru 27, 2019 6:22 pm
Lokalizacja: Żerniki Wrocławskie
Kontakt:

Trochę OT, ale czy dobrze rozumiem, że aby wykorzystać SSD jako cache w QNAP to robi się to kosztem dysku na dane? Jeśli w 4 zatoki wcisnę 4 dyski HDD to o SSD cache mogę zapomnieć?
Widzimy się na Supla Offline Party Season 2 :D

Obrazek
ODPOWIEDZ

Wróć do „FAQ / Jak to zrobić”