SUPLA Scripts (Docker) - zarządzanie własną instancją

Awatar użytkownika
fracz
Posty: 2256
Rejestracja: pt paź 28, 2016 10:56 pm
Lokalizacja: Kraków

Poniżej znajdziesz przydatne komendy pozwalające na zarządzanie Twoją instancją SUPLA Scripts.

Jeśli w poniższych komendach pojawiają się zmienne środowiskowe typu $DATABASE_PASSWORD, możesz je przed wykonaniem komendy ustawić manualnie, np:

Kod: Zaznacz cały

DATABASE_PASSWORD=HasloDoBazyDanych
albo użyć pliku .env z konfiguracji dockera i załadować je automatycznie:

Kod: Zaznacz cały

source supla-scripts/docker/.env
Po takiej konfiguracji komendy już można wklejać bez żadnych modyfikacji.
Awatar użytkownika
fracz
Posty: 2256
Rejestracja: pt paź 28, 2016 10:56 pm
Lokalizacja: Kraków

Coś nie działa - zobacz logi
Something does not work - inspect the logs

Kod: Zaznacz cały

docker logs --tail=50 suplascripts
docker logs --tail=50 suplascripts-db
Zmiana strefy czasowej dla wybranego użytkownika
Change user timezone

Kod: Zaznacz cały

docker exec suplascripts-db mysql -u suplascripts --password=$DB_PASSWORD suplascripts -e "UPDATE users SET timezone='Europe/Warsaw' WHERE username='youruser'"
Kopia zapasowa bazy danych
Database backup

Kod: Zaznacz cały

docker exec suplascripts-db mysqldump -u root --password="$DATABASE_PASSWORD" suplascripts > suplascripts.sql
Jeśli przenosisz działającą instancję w inne miejsce, skopiuj też plik supla-scripts/var/system/key (jest to klucz używany do szyfrowania danych dostępowych do SUPLA API w bazie danych).

Przywrócenie danych z kopii zapasowej
Restore database from the backup

Kod: Zaznacz cały

docker exec suplascripts-db mysql -u root --password="$DATABASE_PASSWORD" -e "DROP SCHEMA suplascripts;"
docker exec suplascripts-db mysql -u root --password="$DATABASE_PASSWORD" -e "CREATE SCHEMA suplascripts;"
docker exec suplascripts-db mysql -u root --password="$DATABASE_PASSWORD" -e "GRANT ALL PRIVILEGES ON suplascripts.* TO 'suplascripts'@'localhost';"
cat suplascripts.sql | docker exec -i suplascripts-db mysql -u root --password="$DATABASE_PASSWORD" suplascripts
Jeśli przeniosłeś instancję w inne miejsce, podmień plik supla-scripts/var/system/key na ten używany w poprzedniej instancji.

Konfiguracja autentykacji OAuth z prywatną instancją SUPLA Cloud
OAuth authorization with private SUPLA Cloud instance

https://github.com/fracz/supla-scripts/ ... d-instance
plnuker
Posty: 97
Rejestracja: ndz gru 30, 2018 10:11 pm

Postawiłem na rpi instancje supla-docker, proxy i supla-scripts. Wszystko się odpala tylko jak zalogować się do scripts?
przez token cały czas nad czymś myśli, oauth - niedostepny.
Załączniki
supla2.PNG
supla2.PNG (40.38 KiB) Przejrzano 5497 razy
supla1.PNG
supla1.PNG (54.83 KiB) Przejrzano 5497 razy
tijo
Posty: 227
Rejestracja: pt gru 01, 2017 12:44 pm

Witam!! Czy jest możliwość dodania usera do supla script bez generowania tokena...chodzi o utworzenie user confirmed.
Awatar użytkownika
kris.sg
Posty: 372
Rejestracja: pn sie 07, 2017 8:08 pm
Lokalizacja: Przezchlebie

Witam
próbuję przenieść bazę ze starej instancji i wywala błąd:

Kod: Zaznacz cały

pi@raspberrypi:~ $ docker exec suplascripts-db mysql -u root --password="$DATABASE_PASSWORD" -e "DROP SCHEMA suplascripts;"
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
korzystałem z poradnika
■Rpi4(m.2) Supla Cloud, Scripts ■Rpi3(sd) SD: 6x MI ATC, 1x W.S.
ROLETY_V3 x12 ■SWITCH_DUAL x4 ■GATE_MODULE_V3 x1 ■SOCKET_SSR x1 ■SMOKE_MODULE x1
SONOFF_TOUCH x4 ■YUNSCHAN x1 ■STAITCASE_DIMMER x1 ■MEW-01 x2 ■mROW-02 x1 ■LEW-01 x1
POW_R2 x2 ■SP111 x3
Awatar użytkownika
michael
Posty: 1299
Rejestracja: śr lis 09, 2016 8:00 am
Lokalizacja: Wojkowice

A na pewno wykonałeś przed komendą backupu ten krok?

Kod: Zaznacz cały

DATABASE_PASSWORD=HasloDoBazyDanych
:mrgreen: :mrgreen: :mrgreen:
Awatar użytkownika
kris.sg
Posty: 372
Rejestracja: pn sie 07, 2017 8:08 pm
Lokalizacja: Przezchlebie

zrobiłem tylko to:

Kod: Zaznacz cały

source supla-scripts/docker/.env
myślałem że to wystarczy do pobrania hasła do bazy
no nic spróbję i dam znać
■Rpi4(m.2) Supla Cloud, Scripts ■Rpi3(sd) SD: 6x MI ATC, 1x W.S.
ROLETY_V3 x12 ■SWITCH_DUAL x4 ■GATE_MODULE_V3 x1 ■SOCKET_SSR x1 ■SMOKE_MODULE x1
SONOFF_TOUCH x4 ■YUNSCHAN x1 ■STAITCASE_DIMMER x1 ■MEW-01 x2 ■mROW-02 x1 ■LEW-01 x1
POW_R2 x2 ■SP111 x3
Awatar użytkownika
michael
Posty: 1299
Rejestracja: śr lis 09, 2016 8:00 am
Lokalizacja: Wojkowice

ogólnie wystarczy pod warunkiem, że w prawidłowej ścieżce to polecenie wykonasz
:mrgreen: :mrgreen: :mrgreen:
Awatar użytkownika
kris.sg
Posty: 372
Rejestracja: pn sie 07, 2017 8:08 pm
Lokalizacja: Przezchlebie

w sumie w poradniku pisze, że można ustawić manualnie hasło lub odczytać z env:
fracz pisze: sob lut 23, 2019 9:28 am Poniżej znajdziesz przydatne komendy pozwalające na zarządzanie Twoją instancją SUPLA Scripts.

Jeśli w poniższych komendach pojawiają się zmienne środowiskowe typu $DATABASE_PASSWORD, możesz je przed wykonaniem komendy ustawić manualnie, np:

Kod: Zaznacz cały

DATABASE_PASSWORD=HasloDoBazyDanych
albo użyć pliku .env z konfiguracji dockera i załadować je automatycznie:

Kod: Zaznacz cały

source supla-scripts/docker/.env
Po takiej konfiguracji komendy już można wklejać bez żadnych modyfikacji.
jedynie czego nie zrobiłem to nie dałem komendy:

Kod: Zaznacz cały

source supla-scripts/docker/.env
przed wykonaniem kopii bazy na starej malinie
■Rpi4(m.2) Supla Cloud, Scripts ■Rpi3(sd) SD: 6x MI ATC, 1x W.S.
ROLETY_V3 x12 ■SWITCH_DUAL x4 ■GATE_MODULE_V3 x1 ■SOCKET_SSR x1 ■SMOKE_MODULE x1
SONOFF_TOUCH x4 ■YUNSCHAN x1 ■STAITCASE_DIMMER x1 ■MEW-01 x2 ■mROW-02 x1 ■LEW-01 x1
POW_R2 x2 ■SP111 x3
Awatar użytkownika
kris.sg
Posty: 372
Rejestracja: pn sie 07, 2017 8:08 pm
Lokalizacja: Przezchlebie

niestety nic to nie dało
na starej malinie zrobiłem kopię bazy:

Kod: Zaznacz cały

pi@raspberrypi:~ $ source supla-scripts/docker/.env

pi@raspberrypi:~ $ docker exec suplascripts-db mysqldump -u root --password="$DATABASE_PASSWORD" suplascripts > suplascripts.sql
kopia zrobiła się bez błędów, przeniosłem suplascripts.sql na nową malinę

Kod: Zaznacz cały

pi@raspberrypi:~ $ source supla-scripts/docker/.env
pi@raspberrypi:~ $ docker exec suplascripts-db mysql -u root --password="$DATABASE_PASSWORD" -e "DROP SCHEMA suplascripts;"
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
pi@raspberrypi:~ $ 
■Rpi4(m.2) Supla Cloud, Scripts ■Rpi3(sd) SD: 6x MI ATC, 1x W.S.
ROLETY_V3 x12 ■SWITCH_DUAL x4 ■GATE_MODULE_V3 x1 ■SOCKET_SSR x1 ■SMOKE_MODULE x1
SONOFF_TOUCH x4 ■YUNSCHAN x1 ■STAITCASE_DIMMER x1 ■MEW-01 x2 ■mROW-02 x1 ■LEW-01 x1
POW_R2 x2 ■SP111 x3
ODPOWIEDZ

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