RoboZonky v Dockeru - RoboZonky/robozonky GitHub Wiki
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 :-)
Příklad použití
$ 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é.
Dostupné varianty
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.
Docker-compose
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
.