Erinevus lehekülje "Docker" redaktsioonide vahel
(→Omaenda konteineri tõmmise loomine) |
|||
18. rida: | 18. rida: | ||
# docker run -t -i ubuntu:latest /bin/bash | # docker run -t -i ubuntu:latest /bin/bash | ||
+ | |||
+ | Tõmmata saab ka juba eelkonfigureeritud tarkvaraga dockeri konteinereid. Näiteks tõmbame mysql serveri ja paneme selle käima | ||
+ | |||
+ | docker pull mysql | ||
+ | docker run -d --name=mysql1 -e MYSQL_ROOT_PASSWORD=’mypassword’ -v /storage/mysql1/mysql-datadir:/var/lib/mysql mysql | ||
+ | |||
+ | Lisaks saab tõmmata ka kindlaid mysql versioone | ||
+ | |||
+ | docker pull mysql:5.6 | ||
===Omaenda konteineri tõmmise loomine=== | ===Omaenda konteineri tõmmise loomine=== |
Redaktsioon: 27. juuni 2018, kell 17:17
Paigaldus ubuntus/debianis
Dockeri paigaldamiseks ubuntu/debiani serveris
# apt-get install docker.io
Laadime alla konteineris kasutamiseks mõeldud ubuntu
# docker pull ubuntu
Peale tõmbamise lõpetamist paigaldatakse see images alla, näha saame seda järgneva käsuga
# docker images REPOSITORY TAG IMAGE ID CREATED SIZE ubuntu latest 113a43faa138 2 weeks ago 81.2MB
Saame näiteks selle sees oleva bashi käivitada ja käsureal ringi vaadata
# docker run -t -i ubuntu:latest /bin/bash
Tõmmata saab ka juba eelkonfigureeritud tarkvaraga dockeri konteinereid. Näiteks tõmbame mysql serveri ja paneme selle käima
docker pull mysql docker run -d --name=mysql1 -e MYSQL_ROOT_PASSWORD=’mypassword’ -v /storage/mysql1/mysql-datadir:/var/lib/mysql mysql
Lisaks saab tõmmata ka kindlaid mysql versioone
docker pull mysql:5.6
Omaenda konteineri tõmmise loomine
Konteineri loomine toimub failis Dockerfile olevate käsurea käskude alusel. Näiteks tekitame lihtsa konfi, mis tekitab meile eelmises lõigus allatõmmatud ubuntu image alusel apache veebiserveri, kus serveerib etteantud index.html faili
FROM ubuntu:latest RUN apt-get update && apt-get install -y apache2 RUN mkdir -p /srv && rm -fr /var/www/html && ln -s /srv /var/www/html EXPOSE 80 ADD index.html /srv/ WORKDIR /srv ENTRYPOINT ["/usr/sbin/apache2ctl", "-D", "FOREGROUND"]
Käsud lahtiseletatult:
- FROM seadistab ära mis imaget me aluseks kasutame
- RUN võimaldab käivitada enda järele kirjutatud käske
- EXPOSE teeb pordi 80 meile nähtavaks
- WORKDIR määrab kasutaja kataloogi
- ENTRYPOINT seadistab ära teenuse, mis konteineris tööle läheb
Ehitame loodud konfi alusel konteineri valmis, selleks anname samas kaustas kus dockerfail järgneva käsu
docker build -t test:test .
Kui protsess lõppes peaksime seda ka images alt nägema
# docker images REPOSITORY TAG IMAGE ID CREATED SIZE test test 364cac645fcc 2 minutes ago 223MB ubuntu latest 113a43faa138 2 weeks ago 81.2MB
Paneme konteineri tööle
# docker run -d -P test:test
Töötavaid konteinereid näeme järgnevalt
# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 5b9850b98a29 test:test "/usr/sbin/apache2ct…" 12 seconds ago Up 11 seconds 0.0.0.0:32770->80/tcp sleepy_carson
Nagu näha on localhosti port 32770 suunatud konteineris 80 pordile.