Alebo viete co, nechajte tak, nubudem vas trapit unikernelmi.
Nemusíte mít strach – fakt mne netrápí, že pořád melete o věcech, o kterých nic nevíte.
To akoze zoberiem ten linuxovy ELF binar JVMka zabaleny v Docker image, otocim to voci Windows kernelu a pojde to? No neviem, ja som bol v tom, ze aby siel Linuxovy image v Dockeri na Windowse, treba paravirtualizovat Linuxovy kernel cez Hyper-V. To mi teda nepripada ako nenarocna kontajnerova izolacia cez namespace a cgroupy, ale budiz.
Vy jste se ovšem ptal, jestli ten Linuxový image půjde provozovat i pod Windows. A to půjde, jak už jste sám zjistil – a třeba pro vývoj to výkonově bude stačit.
Dik za tip. Citali ste to vyssie? Co keby ste si vy nastudovali ako to funguje?
„Výše“ je předchozí část vašeho komentáře, o způsobu spouštění linuxových Docker kontejnerů na Windows? Tu jsem fakt nečetl dřív, než jste ji napsal. A jak funguje Docker vím a věděl jsem to i před tím, než vy jste začal googlit, abyste zjistil, proč Docker není virtualizace, ale že se jedná o kontejnery.
Vy akoze neupdatujete JRE, ci co?
Já ho updatuju. Ale lidé provozují i Javu i na počítačích, které nespravuju, a provozují tam i jiné aplikace, než ty moje.
Co musite mat pri jave zafixovane?
Třeba verzi JRE (např. kvůli vyhnutí se známým chybám), dodavatele JRE (Oracle/OpenJDK/IBM), ve starších verzí Security Policy, Java extensions, Java agents, národní prostředí, nativní knihovny používané přes JNI…
Neviete spustit java8 -jar app.jar alebo java9 -jar app.jar alebo random-java -jar app.jar?
Viem. A vy si takhle někdy zkuste spustit Maven –
java-8 -jar mvn.sh. To se budete divit. Nebo si takhle zkuste spustit Java WebStart aplikaci.
Kvoli tomu potrebujete Docker?
Ne.
Mat JREcko v Dockri dava zmysel?
Ano, perfektní. Porovnejte si třeba instalaci Confluence v porovnání s
docker run, porovnejte si instalaci Elasticsearch + LogStash + Kibana s
docker-compose up. A pak si to porovnejte, když to budete spouštět na 16 serverech ručně a když to tam spustíte přes Kubernetes.
Spustit na jednom JRE 6 verzii jednej aplikacie nejde? Alebo aj 6 instancii 6 verzii jednej aplikacie na 3 roznych JRE? To je akoze TEN problem?
Docker neřeší nic, co by nešlo jinak. Akorát jsou některé věci podstatně jednodušší.
Navíc Docker podle mého názoru některé věci řeší ne zrovna nejlépe, radši mám třeba rkt. Ale tady šlo o něco úplně jiného – o to, že jste nechápal, že Spring Boot slouží jenom pro snazší konfiguraci Spring frameworku a přidružených technologií; zatímco Docker slouží pro zabalení celého prostředí aplikace (nejen Javovské) do jednoho balíčku, který je pak možné distribuovat a spouštět na různých prostředích (ať už na bare metal, ve virtuálních strojích nebo v cloudu) a který na rozdíl od jiných způsobů (třeba virtualizace celého OS) řeší oddělení jednotlivých prostředí pouze pomocí linuxových jmenných prostorů, takže je tam minimální overhead (a na druhou stranu to oddělení není úplně dokonalé).
Vy pri buildovani JARka prekompilujete aj bytecode tretich stran ci co?
Ne. A víte vy vůbec, jak vypadá taková Java aplikace? Protože vaše odpověď je poněkud mimoběžná s námitkou, že pod JRE 8 nespustíte aplikaci s bajtkódem zkompilovaným pro Javu 10.
Alebo neviete, co si balite k vasej aplikaci?
Vím. Ale to že to vím nijak nepomáhá tomu, aby někdo spustil pod Javou 8 bajtkód pro Javu 10.