admin_grundlagen:docker:docker_volumes_by_examples
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
| Beide Seiten, vorherige ÜberarbeitungVorherige ÜberarbeitungNächste Überarbeitung | Vorherige Überarbeitung | ||
| admin_grundlagen:docker:docker_volumes_by_examples [2026/05/08 11:42] – peter_rossbach2 | admin_grundlagen:docker:docker_volumes_by_examples [2026/05/29 14:01] (aktuell) – peter_rossbach2 | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| ===== Docker volumes by examples ===== | ===== Docker volumes by examples ===== | ||
| - | ==== NFS ==== | + | ==== Start nginx with local path ==== |
| + | |||
| + | Create Website content: | ||
| + | |||
| + | <code bash> | ||
| + | mkdir -p htdocs | ||
| + | cat > | ||
| + | < | ||
| + | <html lang=" | ||
| + | < | ||
| + | <meta charset=" | ||
| + | < | ||
| + | </ | ||
| + | < | ||
| + | < | ||
| + | </ | ||
| + | </ | ||
| + | EOF | ||
| + | </ | ||
| + | |||
| + | <code bash> | ||
| + | |||
| + | docker run -d --name nginx-local \ | ||
| + | -v $(pwd)/ | ||
| + | |||
| + | IPADDRESS=$(docker inspect -f ' | ||
| + | # Alternative with jq | ||
| + | # docker inspect nginx-local| jq -r ' | ||
| + | curl $IPADDRESS | ||
| + | |||
| + | </ | ||
| + | |||
| + | ==== Start nginx with docker volumes ==== | ||
| + | |||
| + | Prepare docker managed volume: | ||
| + | |||
| + | <code bash> | ||
| + | docker volume create htdocs-volume | ||
| + | |||
| + | docker container run \ | ||
| + | -v $(pwd)/ | ||
| + | -v htdocs-volume:/ | ||
| + | -ti --rm alpine /bin/sh | ||
| + | cp htdocs/ | ||
| + | exit | ||
| + | |||
| + | </ | ||
| + | |||
| + | Use docker managed volume: | ||
| + | |||
| + | <code bash> | ||
| + | docker run -d --name web-server \ | ||
| + | -v htdocs-volume:/ | ||
| + | |||
| + | # check content | ||
| + | docker exec web-server ls / | ||
| + | docker run --rm -ti --volumes-from web-server alpine /bin/sh | ||
| + | ls / | ||
| + | exit | ||
| + | |||
| + | </ | ||
| + | |||
| + | Inspect volumes: | ||
| + | |||
| + | <code bash> | ||
| + | docker volume ls | ||
| + | docker volume inspect htdocs-volume | ||
| + | |||
| + | #docker volume rm htdocs-volume | ||
| + | </ | ||
| + | |||
| + | ==== Start with mount options and publish nginx ==== | ||
| + | |||
| + | <code bash> | ||
| + | docker run \ | ||
| + | --mount type=bind, | ||
| + | -p 8080:80 \ | ||
| + | nginx-public | ||
| + | </ | ||
| + | |||
| + | ==== Start local mysql ==== | ||
| + | |||
| + | <code bash> | ||
| + | # hostpath bind mount | ||
| + | docker run --name mysql-db \ | ||
| + | -v $(pwd)/ | ||
| + | -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql: | ||
| + | |||
| + | # Access DB | ||
| + | |||
| + | # Stop db | ||
| + | docker stop mysql.db | ||
| + | docker rm mysql-db | ||
| + | |||
| + | # or docker managed volume / | ||
| + | docker volume create mysql-data | ||
| + | docker run --name mysql-db \ | ||
| + | -v mysql-data:/ | ||
| + | -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql: | ||
| + | |||
| + | </ | ||
| + | |||
| + | ++++ NFS | | ||
| + | |||
| + | - https:// | ||
| + | - https:// | ||
| Install NFS kernel server | Install NFS kernel server | ||
| Zeile 32: | Zeile 137: | ||
| - | Mount NFS Share: | + | Create docker volume with a NFS Share: |
| <code bash> | <code bash> | ||
| Zeile 43: | Zeile 148: | ||
| </ | </ | ||
| + | |||
| + | Use volume inside docker-compose service: | ||
| <code bash> | <code bash> | ||
| Zeile 81: | Zeile 188: | ||
| - | With docker --mount: | + | Use nfs share with docker --mount |
| <code bash> | <code bash> | ||
| Zeile 94: | Zeile 201: | ||
| </ | </ | ||
| + | ++++ | ||
admin_grundlagen/docker/docker_volumes_by_examples.1778240559.txt.gz · Zuletzt geändert: 2026/05/08 11:42 von peter_rossbach2
