Skaitydami šį straipsnį tikriausiai jau žinote kas yra Docker, o galbūt jau yra tekę išbandyti kokį nors konteinerį.
Naudotis kitų sukurtais konteineriais taip pat smagu kaip ir pačiam juos kurti.
Įprastai Docker instaliacija tikrinama paleidžiant anglišką „sveikas pasauli“ konteinerį:
$ docker run hello-world
Unable to find image 'hello-world:latest' locally
[..]
Status: Downloaded newer image for hello-world:latest
Hello from Docker!
This message shows that your installation appears to be working correctly.
Tokį testinį konteinerį lengva susikurti ir patiems.
Operacinės sistemos pasirinkimas
Kiekvienas Docker konteineris prasideda eilute apie operacinę sistemą - su kokia turėtų startuoti.
Dažniausiai (arba paprasčiausiai) tam pasirenkama kokia nors Ubuntu versija vien dėl jos populiarumo.
Susikurkime failą Dockerfile
ir visus tolimesnius veiksmus atlikime šiame faile.
Jo pirmoje eilutėje nurodykime, kad naudosime Ubuntu operacinę sistemą:
FROM ubuntu:latest
Super yra tai, kad Dockerfile
palaiko komentarus:
# Rinktis pasenusią operacinės versiją - nerekomenduojama
FROM ubuntu:16.04
Komandų vykdymas
IT pasaulis labai daug diskutuoja apie mikroservisų architektūras. Gal dėl to Docker’is taip stipriai ir išpopuliarėjo, kadangi čia labai įprasta, kad vienas konteineris daro tik vieną darbą.
Kadangi jau operacinę sistemą turime - dabar galime leisti komandas.
Komandų aprašai daromi su CMD
iškvietimu iš argumentai paduodami masyvo principu:
CMD ["echo", "Sveikas pasauli!"]
Konteinerio kompiliavimas
Visus Docker konteinerius reikia pirmiausiai sukurti:
docker build -t sveikas-pasauli .
Žymės argumentų (-t sveikas-pasauli
) naudoti nebūtina, bet jie padeda lengviau atpažinti savo sukurtus konteinerius.
Kai atvaizdas bus sukurtas, jį galėsite pamatyti docker images
išvestyje:
$ docker images
REPOSITORY IMAGE ID CREATED SIZE
sveikas-pasauli 94efed708db0 12 minutes ago 112MB
112 MB sveria „sveikas pasauli“ atvaizdas? Wow!
Konteinerio paleidimas
Sukurtą konteinerį galime paleisti ir išbandyti:
$ docker run sveikas-pasauli
Sveikas pasauli!
Fone veikiantys konteineriai
Galime patikrinti ar mūsų Docker konteineris veikia fone su docker ps
.
Deja, ten šio konteinerio nerasite.
Taip yra todėl, kad mūsų parašyta komanda išvedė tekstą ir sėkmingai baigė darbą. Tuo galite įsitikinti pažiūrėję ką rašys docker ps -a
kuri rodo informaciją apie visus konteinerius:
$ docker ps -a
CONTAINER ID IMAGE COMMAND STATUS
fbd3ccb23e41 sveikas-pasauli "echo 'Sveikas pasau…" Exited (0) 10 minutes
Konteinerį su Docker pasileidome per kelias minutes. Kituose straipsniuose pakalbėsime apie kokio nors framework’o paleidimą per Dockerį.