Linuxhotel Wiki

Wie ging das nochmal?

Benutzer-Werkzeuge

Webseiten-Werkzeuge


admin_grundlagen:docker:docker_volumes_by_examples

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
admin_grundlagen:docker:docker_volumes_by_examples [2026/05/19 06:59]
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 =====
  
-==== Start mysql with docker volumes ​====+==== Start nginx with local path ====
  
-Prepare volume:+Create Website content:
  
 <code bash> <code bash>
-docker volume create htdocs-volume 
- 
 mkdir -p htdocs mkdir -p htdocs
 cat >​htdocs/​index.html <<EOF cat >​htdocs/​index.html <<EOF
Zeile 14: Zeile 12:
 <​head>​ <​head>​
   <meta charset="​utf-8">​   <meta charset="​utf-8">​
-  <​title>​Docker Nginx</​title>​+  <​title>​Docker ​Local Path Nginx</​title>​
 </​head>​ </​head>​
 <​body>​ <​body>​
Zeile 21: Zeile 19:
 </​html>​ </​html>​
 EOF EOF
 +</​code>​
 +
 +<code bash>
 +
 +docker run -d --name nginx-local \
 +-v $(pwd)/​htdocs:/​usr/​share/​nginx/​html nginx
 +
 +IPADDRESS=$(docker inspect -f '​{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}'​ nginx-local)
 +# Alternative with jq
 +# docker inspect nginx-local| jq -r '​.[0].NetworkSettings.Networks.bridge.IPAddress'​
 +curl $IPADDRESS
 +
 +</​code>​
 +
 +==== Start nginx with docker volumes ====
 +
 +Prepare docker managed volume:
 +
 +<code bash>
 +docker volume create htdocs-volume
 +
 docker container run \ docker container run \
     -v $(pwd)/​htdocs:/​htdocs \     -v $(pwd)/​htdocs:/​htdocs \
Zeile 30: Zeile 49:
 </​code>​ </​code>​
  
-Use Volume:+Use docker managed volume:
  
 <code bash> <code bash>
Zeile 44: Zeile 63:
 </​code>​ </​code>​
  
-Inspect+Inspect ​volumes:
  
-<code bash+<code bash>
 docker volume ls docker volume ls
 docker volume inspect htdocs-volume docker volume inspect htdocs-volume
  
-docker volume rm htdocs-volume+#docker volume rm htdocs-volume
 </​code>​ </​code>​
 +
 +==== Start with mount options and publish nginx ====
 +
 +<code bash>
 +docker run \
 +  --mount type=bind,​src=$(pwd)/​htdocs,​dst=/​usr/​share/​nginx/​html,​readonly \
 +  -p 8080:80 \
 +  nginx-public
 +</​code>​
 +
 +==== Start local mysql ====
  
 <code bash> <code bash>
Zeile 59: Zeile 89:
   -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:8.4.9   -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:8.4.9
  
 +# Access DB
 +
 +# Stop db
 docker stop mysql.db docker stop mysql.db
 docker rm mysql-db docker rm mysql-db
admin_grundlagen/docker/docker_volumes_by_examples.1779173968.txt.gz · Zuletzt geändert: 2026/05/19 06:59 von peter_rossbach2