-
Notifications
You must be signed in to change notification settings - Fork 23
RoboZonky v Dockeru
Počínaje verzí 4.6.0, RoboZonky lze používat i jako Docker container. Tato stránka poskytuje ty nejdůležitější informace o RoboZonky v Dockeru.
Pro začátečníky, jako jsem já: toto řešení nelze použít na Raspberry Pi vzhledem k odlišné architektuře procesoru. Investujte raději zbytečné 2 hodiny strávené instalací a konfigurací do něčeho lepšího :-)
$ docker run -d \
-v $CONFIG_DIR:/etc/robozonky \
-v $WORKING_DIR:/var/robozonky \
-e TZ=Europe/Prague \
robozonky/robozonky:latest
V tomto příkladu:
-
$CONFIG_DIR
nahraďte za cestu ve vašem souborovém systému, kde máte uloženu konfiguraci robota. RoboZonky tam bude hledat přinejmenším souboryrobozonky.cli
,robozonky.properties
alog4j2.xml
. Pokud o těchto souborech nic nevíte, doporučujeme použít RoboZonky instalátor, který pro vás jejich ukázky vytvoří. -
$WORKING_DIR
nahraďte za cestu ve vašem souborovém systému, kam si přejete, aby robot ukládal své pracovní soubory, zejména logy a stav aplikace. RoboZonky tam bude hledat souboryrobozonky.keystore
arobozonky-strategy.cfg
. - Nastavujeme časovou zónu kontejneru na stejnou, jakou používá server Zonky. Děláme to proto, aby se různé dávkové operace uvnitř RoboZonky spouštěly přesně v takovou dobu, na jakou byly navrženy. (Např. integrace se Stonky poběží těsně po půlnoci, v návaznosti na aktualizaci dat na Zonky.)
Doporučujeme zvážit následující dodatečné parametry příkazové řádky:
-
-m Xm
omezí množství paměti dostupné pro Docker kontejner, a tedy pro robota.X
nahraďte hodnotou v megabytech. V našich experimentech se ukazuje, že128
je příliš málo a jakákoliv hodnota vyšší než150
by měla být dostatečná. -
-p X:7091
zpřístupní sledování robota přes JMX.X
nahraďte za číslo portu, na kterém má být rozhraní JMX na vašem systému dostupné.
RoboZonky Docker images jsou dostupné v několika variantách. Následující tabulka vysvětluje, co lze ve které variantě očekávat:
Varianta | Úroveň stability | Číslovaná verze |
---|---|---|
latest | Vysoká | Ano. |
released | Střední | Ano. |
testing | Střední | Ne. |
dev | Nepředvídatelná | Ne. |
Jinými slovy:
-
latest
obsahuje vždy nejnovější dostupnou stabilní verzi RoboZonky. Toto je nejvhodnější varianta pro běžné uživatele. -
testing
obsahuje vždy nejnovější dostupný kód RoboZonky ze stabilní větve vč. takového, který ještě nebyl zahrnut vlatest
. Vhodné pro uživatele, kteří jsou schopni akceptovat vyšší míru rizika a chtějí pomoci s testováním před vydáním stabilní verze. -
released
obsahuje vždy nejnovější dostupnou verzi RoboZonky, ať už stabilní nebo testovací. Může obsahovat i velmi rané verze jako jsou Alpha nebo Beta. Vhodné pouze pro odvážné. -
dev
jde přímo zmaster
branche, a jde tedy o nejaktuálnější vývojovou verzi. Určeno výhradně vývojářům, kteří vědí, co dělají.
Kromě toho mají všechny varianty (kromě dev
) ještě svoje podvarianty podle toho, jaké verze se do nich dostanou. Např. latest-4.6.x
bude dostávat pouze opravy chyb pro verzi 4.6.0.
Při souborové struktuře
(/home/user/docker/RoboZonky) $ tree
.
├── config
│ ├── log4j2.xml
│ ├── robozonky.cli
│ └── robozonky.properties
├── working
│ ├── robozonky-strategy.cfg
│ └── robozonky.keystore
└── docker-compose.yml
docker-compose.yml
version: '3.4'
services:
robozonky:
image: robozonky/robozonky:latest
container_name: RoboZonky
restart: always
volumes:
- ./config:/etc/robozonky
- ./working:/var/robozonky
environment:
TZ: Europe/Prague
robozonky.cli
Upravit -g
a -s
na aktuální adresář (smazat cestu před názvy souborů).
-p
ponechat tak, jak vylezl při prvním spuštění přes java aplikaci.
-g
"robozonky.keystore"
-p
"xxxxx-yyyy-zzzzz-xxxx-yyyyyyyyyyyy"
-s
"robozonky-strategy.cfg"
Spustit na pozadí příkazem docker-compose up -d
.