Kas yra Docker
Docker išsprendžia seną problemą „mano kompiuteryje veikia, o serveryje – ne“. Programa ir viskas, ko jai reikia (kalbos versija, bibliotekos, sisteminiai paketai, nustatymai), aprašoma viename faile – Dockerfile. Iš jo surenkamas atvaizdas (angl. image), o paleistas atvaizdas tampa konteineriu. Tas pats atvaizdas vienodai veiks kūrėjo kompiuteryje, testavimo serveryje ir gamybinėje aplinkoje.
Docker viešai pirmą kartą pristatė Solomonas Hykesas PyCon konferencijoje 2013 m. kovo 15 d. Įmonė, anksčiau vadinta dotCloud, persivadino Docker, Inc.; 2019 m. jos Enterprise verslas buvo parduotas Mirantis, o pati Docker, Inc. susitelkė į kūrėjų įrankius. Pagrindinis variklis vystomas atviru kodu kaip Moby projektas su Apache 2.0 licencija.
Kaip veikia
Konteineris nėra virtuali mašina: jis nenaudoja atskiros operacinės sistemos, o dalijasi serverio Linux branduoliu, tik yra atskirtas nuo kitų procesų. Todėl konteineriai paleidžiami per kelias sekundes ir viename serveryje jų gali veikti dešimtys. Pagrindinės dalys:
- Docker Engine – serveryje veikiantis variklis, kuris paleidžia konteinerius. Nemokamas, atviro kodo.
- Docker Compose – vienu YAML failu aprašoma visa sistema: svetainė, duomenų bazė, talpykla, el. pašto siuntimas. Paleidžiama viena komanda.
- Docker Desktop – programa Windows, macOS ir Linux kompiuteriams su grafine sąsaja; ja dažniausiai naudojasi kūrėjai.
- Docker Hub – viešų ir privačių atvaizdų saugykla. Joje yra oficialūs PostgreSQL, Node.js, nginx ir kitų programų atvaizdai.
- Docker Scout – atvaizdų pažeidžiamumų analizė.
Ką tai reiškia verslui
Jei svetainė ar sistema paleista konteineriuose, jos perkėlimas į kitą serverį ar pas kitą tiekėją tampa daug paprastesnis, nes visa aplinka aprašyta faile. Naujam kūrėjui nereikia dienos diegti priklausomybių – pakanka paleisti Compose. Atnaujinimus galima išbandyti atskirame konteineryje, o nepavykus – greitai grįžti prie ankstesnio atvaizdo.
Kam tinka ir kam ne
- Svetainėms ir sistemoms iš kelių dalių (programa, duomenų bazė, talpykla), kurias reikia vienodai paleisti keliose aplinkose
- Savame serveryje (VPS) diegiamoms atviro kodo programoms – n8n, analitikos, CRM, el. pašto įrankiams
- Komandoms, kuriose keli kūrėjai turi dirbti vienodoje aplinkoje
- Projektams, kuriuos ateityje gali tekti perkelti pas kitą hostingo ar debesų tiekėją
- Automatiniam diegimui per CI/CD, pavyzdžiui, su GitHub Actions
- Paprastai WordPress ar Wix svetainei įprastame dalijamajame hostinge – ten Docker dažnai net nepasiekiamas
- Įmonėms be žmogaus, kuris prižiūrės serverį, atnaujinimus ir atsargines kopijas
- Darbalaukio programoms su grafine sąsaja Windows aplinkoje
- Duomenų bazėms be apgalvotos duomenų tomų ir kopijų strategijos – ištrynus konteinerį neteisingai, galima prarasti duomenis
- Didelėms paskirstytoms sistemoms be orkestravimo įrankio (Kubernetes ar panašaus)
Kiek kainuoja Docker
Kainodara: Docker Engine nemokamas; Docker Desktop ir Docker Hub – prenumerata už naudotoją per mėnesį.
| Planas | Kaina | Kas įeina |
|---|---|---|
| Personal | nemokamai / mėn. 1 naudotojas; komerciniam naudojimui tik mažoms įmonėms | Docker Desktop, Engine, Kubernetes; Docker Hub: 1 privati repozitorija; 100 atsisiuntimų per valandą iš Docker Hub; Docker Scout 1 repozitorijai |
| Pro | 9 $ / mėn. vienam naudotojui mokant už metus; mokant kas mėnesį – 11 USD | neriboti atsisiuntimai iš Docker Hub; neribotos privačios repozitorijos; 200 Build Cloud minučių per mėn.; 100 Testcontainers Cloud minučių per mėn.; pagalba per 5 darbo dienas |
| Team | 15 $ / mėn. vienam naudotojui mokant už metus; mokant kas mėnesį – 16 USD; iki 100 naudotojų | viskas, kas Pro; vaidmenimis grįsta prieiga, audito žurnalai; 500 Build Cloud minučių per mėn.; pagalba per 2 darbo dienas |
| Business | 24 $ / mėn. vienam naudotojui mokant už metus; naudotojų skaičius neribojamas | viskas, kas Team; SSO, SCIM, sustiprintas Docker Desktop; atvaizdų ir registrų prieigos valdymas; 1 500 Build Cloud minučių per mėn.; apmokėjimas pagal sąskaitą, pagalba per 1 darbo dieną |
Kainos 2026 m. 10 mėn. duomenimis pagal oficialų kainų puslapį. Prieš pirkdami pasitikrinkite.
Docker Desktop yra nemokamas mažoms įmonėms – turinčioms mažiau nei 250 darbuotojų ir mažiau nei 10 mln. JAV dolerių metinių pajamų. Didesnėms organizacijoms ir valstybės institucijoms profesionaliam naudojimui reikia mokamo plano. Docker Engine serveryje licencijos mokesčio nereikalauja.
Realūs kaštai dažniausiai yra serveris, kuriame veikia konteineriai (VPS ar debesų paslauga), atsarginių kopijų saugykla ir priežiūros darbas. Papildomai: Testcontainers Cloud minutės – 3 USD už 100 minučių iš anksto arba 4 USD pagal poreikį; Docker Hardened Images Select – nuo 5 000 USD už repozitoriją. Kainos – 2026 m. spalio duomenimis.
Privalumai ir trūkumai
- Vienoda aplinka kūrėjo kompiuteryje, testavime ir serveryje
- Variklis nemokamas ir atviro kodo, veikia bet kuriame Linux serveryje
- Lengva perkelti sistemą pas kitą hostingo ar debesų tiekėją
- Didžiulė paruoštų oficialių atvaizdų biblioteka Docker Hub
- Paprasta grįžti prie ankstesnės versijos, jei atnaujinimas nepavyko
- Reikia Linux serverio administravimo žinių: tinklas, tomai, atnaujinimai
- Neteisingai sukonfigūravus tomus galima prarasti duomenų bazės duomenis
- Didesnėms įmonėms Docker Desktop mokamas kiekvienam kūrėjui
- Pasenę atvaizdai kaupia saugumo spragas – juos reikia reguliariai atnaujinti
- Didelėms sistemoms vien Docker nepakanka – reikia orkestravimo
Versijos ir palaikymas
Kurios Docker versijos dar gauna saugumo pataisas. Pasibaigus palaikymui versija nebeatnaujinama, todėl svetainę verta atnaujinti iš anksto. Duomenys atnaujinami automatiškai pagal endoflife.date.
| Versija | Išleista | Naujausia | Palaikymas iki |
|---|---|---|---|
| 29 | 2025-11-10 | 29.8.2 | palaikoma |
| 28 | 2025-02-20 | 28.5.2 | baigėsi 2026-05-13 |
| 27 | 2024-06-25 | 27.5.1 | baigėsi 2025-05-03 |
| 26.1 | 2024-04-22 | 26.1.5 | baigėsi 2025-02-17 |
| 26.0 | 2024-03-20 | 26.0.2 | baigėsi 2024-06-08 |
| 25.0 | 2024-01-19 | 25.0.18 | 2026-12-04 |
| 24.0 | 2023-05-16 | 24.0.9 | baigėsi 2024-06-08 |
| 23.0 | 2023-02-02 | 23.0.18 | baigėsi 2025-05-19 |
Docker Lietuvoje
Licencija mažoms įmonėms. Daugumai Lietuvos įmonių Docker Desktop nemokamas, nes jos turi mažiau nei 250 darbuotojų ir mažiau nei 10 mln. USD metinių pajamų. Viršijus bent vieną ribą, kiekvienam Docker Desktop naudojančiam kūrėjui reikia mokamo plano. Serveryje veikiantis Docker Engine licencijos mokesčio nereikalauja niekam.
Duomenų vieta ir BDAR. Docker pats duomenų nesaugo – konteineriai veikia jūsų pasirinktame serveryje. Pasirinkę serverį ES duomenų centre, pavyzdžiui, Vokietijoje ar Suomijoje, išlaikote klientų duomenis ES. Tai vienas paprasčiausių būdų savo serveryje paleisti n8n, analitikos ar CRM sistemą neperduodant duomenų į JAV.
Docker Hub ir privatūs atvaizdai. Jei atvaizduose yra jūsų sistemos kodas, jie turi būti privačioje repozitorijoje, o ne viešai prieinami. Slaptažodžiai ir API raktai į atvaizdus neturi būti įrašomi.
Atsiskaitymas. Planai apmokami JAV doleriais; pagal sąskaitą – tik Business plane.
Alternatyvos
| Alternatyva | Tipas | Kada rinktis vietoj Docker |
|---|---|---|
| Podman | – | Atviro kodo Red Hat įrankis, suderinamas su Docker komandomis, veikia be nuolat veikiančio fono proceso ir be administratoriaus teisių; licencijos mokesčio nėra ir didelėms įmonėms. |
| Kubernetes | – | Ne pakaitalas, o kitas lygmuo: valdo daugybę konteinerių keliuose serveriuose, automatiškai juos perkrauna ir plečia. Rinktis, kai vieno serverio su Compose nebepakanka. |
| AWS | debesų platforma (IaaS, PaaS, serverless) | Valdomos konteinerių paslaugos (pvz., ECS, Fargate) leidžia paleisti tuos pačius Docker atvaizdus be savo serverio priežiūros, bet kaina priklauso nuo naudojimo ir sunkiau prognozuojama. |
| Hetzner | debesų serveriai (IaaS), dedikuoti serveriai, saugyklos | Ne konteinerių įrankis, o ES serverių tiekėjas, kuriame Docker dažniausiai ir paleidžiamas; tinka, kai norite fiksuotos mėnesinės kainos ir duomenų ES. |
- Supakuojame jūsų svetainę ar sistemą į Docker konteinerius ir aprašome visą aplinką Docker Compose faile
- Paleidžiame konteinerius ES serveryje su HTTPS, ugniasiene ir automatinėmis duomenų bazės kopijomis
- Nustatome automatinį diegimą iš GitHub: po patvirtinto pakeitimo surenkamas naujas atvaizdas ir atnaujinamas serveris
- Reguliariai atnaujiname bazinius atvaizdus ir tikriname pažeidžiamumus
- Perkeliame senas sistemas iš dalijamojo hostingo į konteinerius ir atgal, jei reikia
Dažni klausimai
Ar Docker nemokamas?
Docker Engine, kuris veikia serveryje, yra nemokamas ir atviro kodo (Apache 2.0). Docker Desktop nemokamas asmeniniam naudojimui, švietimui, nekomerciniams atviro kodo projektams ir įmonėms, turinčioms mažiau nei 250 darbuotojų ir mažiau nei 10 mln. USD metinių pajamų. Kitais atvejais mokamas Pro, Team arba Business planas.
Kuo konteineris skiriasi nuo virtualios mašinos?
Virtuali mašina turi visą savo operacinę sistemą, todėl yra didesnė ir lėčiau paleidžiama. Konteineris dalijasi serverio branduoliu ir turi tik programai reikalingus failus, todėl paleidžiamas per sekundes, o viename serveryje jų telpa daug daugiau.
Ar WordPress svetainę galima paleisti su Docker?
Taip, yra oficialūs WordPress ir MySQL atvaizdai, kuriuos galima paleisti su Docker Compose. Tačiau įprastame dalijamajame hostinge Docker dažniausiai nepasiekiamas – reikės VPS ar debesų serverio.
Kas yra Docker Compose?
Tai įrankis, kuriuo viename YAML faile aprašomi visi sistemos konteineriai (pvz., svetainė, duomenų bazė, talpykla) ir paleidžiami viena komanda. Pavyzdžiui, n8n dokumentacijoje būtent Docker Compose nurodomas kaip tinkamiausias būdas diegti gamybinėje aplinkoje.
Ar Docker saugus?
Konteineriai atskirti vienas nuo kito, bet saugumas priklauso nuo priežiūros: reikia naudoti oficialius ar patikrintus atvaizdus, juos reguliariai atnaujinti, nevykdyti procesų administratoriaus teisėmis be būtinybės ir neįrašyti slaptažodžių į atvaizdus.
Ar man reikia Kubernetes, jei naudoju Docker?
Daugumai mažų ir vidutinių įmonių sistemų pakanka vieno serverio su Docker Compose. Kubernetes reikalingas, kai sistema turi veikti keliuose serveriuose, automatiškai plėstis ir būti nuolat pasiekiama net sugedus vienam iš jų.
Šaltiniai
- Pricing | Docker – Docker
- Docker Desktop license agreement – Docker Docs
- Docker: Nine Years YOUNG – Docker
- Docker, Inc. – Wikipedia
- moby/moby repozitorija – GitHub
- Docker Engine – endoflife.date
- Docker Status – Docker