Linux:Docker
(Változatok közti eltérés) (→Konténer menedzsment) |
(→MySQL szerver) |
||
133. sor: | 133. sor: | ||
</code> | </code> | ||
- | + | == Dockerfile == | |
<code lang="bash"> | <code lang="bash"> | ||
+ | # Dockerfile | ||
+ | # A konténer elkészítése: docker build -t ninvaders:1 . | ||
+ | # Indítása (1): docker run -it ninvaders:1 | ||
+ | # Indítása (2): docker run -it ninvaders:1 bash | ||
+ | # ------------------------------------------------------ | ||
+ | |||
+ | # Base | ||
+ | FROM ubuntu:latest | ||
+ | # FROM ubuntu:16.04 | ||
+ | |||
+ | # Készítette | ||
+ | MAINTAINER Koczka Ferenc <koczka.ferenc@uni-eszterhazy.hu> | ||
+ | |||
+ | # update | ||
+ | RUN apt-get update && apt-get -y install ninvaders | ||
+ | |||
+ | # Környezeti változók beállítása | ||
+ | ENV VERSION 1.0 | ||
+ | |||
+ | # set working dir | ||
+ | WORKDIR /usr/games | ||
+ | CMD ["./ninvaders"] | ||
</code> | </code> | ||
A lap 2020. december 3., 08:42-kori változata
Tartalomjegyzék |
Docker
docker version # docker -v
Hello world!
docker run hello-world # == docker create hello-world ; docker start -a 12sad...
docker run --name hw hello-world
Részletesebben:
docker create hello-world docker start -a 12sad...
Konténerek listázása
docker ps # Futó konténerek listázása docker ps -a # Összes konténer listázása
docker start vibrant_solomon
docker stop vibrant_solomon
docker kill vibrant_solomon
Konténer törlése
docker rm 6d7e1cec74fa # Egy konténer törlése [csak addig kell írni az azonosítót, amíg egyértelmű nem lesz.] docker container prune # Összes leállított konténer törlése === docker rm $(docker ps -a -q -f status=exited)
Image-ek kezelése
docker image ls # Image-ek listázása (=== docker images) docker image rm ubuntu:latest # Image törlése (=== docker image rm romantic_franklin) docker rmi hello-world -f # Az összes Hello-world törlése
Konténer letöltése
docker pull busybox
Busybox
Konténer indítása
docker run busybox
docker run busybox ls
Ubuntu
Egy alap "üres" Linux konténer létrehozása, indítása és belépés:
docker run -it ubuntu bash
docker run -it ubuntu:16.04 bash
Konténer menedzsment
Folyamatos üzemre tervezve
docker run --restart=always -it ubuntu bash
docker attach vibrant_solomon
docker attach d65506baadb2
(mc install, demonstrálható a screen-szerű működés:)
CTRL-p + CTRL-q
docker exec -it vibrant_solomon /bin/bash
Alpine Linux
docker run alpine ls -l /bin
Webszerver, készíthetünk egy egyszerű weblapot is.
mkdir web cd web docker run -dit --name my-apache-app -p 8080:80 -v "$PWD":/usr/local/apache2/htdocs/ httpd:2.4
Vagy olvashatjuk a dokumentációt:
docker run -d -p 80:80 docker/getting-started Böngészőben: http://127.0.0.1:
MySQL szerver
#!/bin/bash INSTANCE_NAME="mysql-5.6" MYSQL_ROOT_PW="TitkosJelszo" MYSQL_DATA_DIR=/Users/koczka.ferenc/Docker/mysql-5.6/data MYSQL_CONF_DIR=/Users/koczka.ferenc/Docker/mysql-5.6/conf set -x docker stop mysql-5.6 docker rm mysql-5.6 [ -d conf.d ] && rm -r conf.d [ -d data ] && rm -r data docker run -d \ --name ${INSTANCE_NAME} \ -e MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PW} \ -p 3306:3306 \ -v ${MYSQL_CONF_DIR}:/etc/mysql/ \ -v ${MYSQL_DATA_DIR}:/var/lib/mysql \ mysql:5.6 #docker exec -it $INSTANCE_NAME /bin/bash -c " #apt-get update ; #apt-get -y install mc ; #" exit docker exec -it mysql-5.6 /bin/bash docker stop mysql-5.6
Dockerfile
# Dockerfile # A konténer elkészítése: docker build -t ninvaders:1 . # Indítása (1): docker run -it ninvaders:1 # Indítása (2): docker run -it ninvaders:1 bash # ------------------------------------------------------ # Base FROM ubuntu:latest # FROM ubuntu:16.04 # Készítette MAINTAINER Koczka Ferenc <koczka.ferenc@uni-eszterhazy.hu> # update RUN apt-get update && apt-get -y install ninvaders # Környezeti változók beállítása ENV VERSION 1.0 # set working dir WORKDIR /usr/games CMD ["./ninvaders"]