Linuxhotel Wiki

Wie ging das nochmal?

Benutzer-Werkzeuge

Webseiten-Werkzeuge


admin_grundlagen:docker:docker_volumes_by_examples

Docker volumes by examples

Start mysql with docker volumes

Prepare volume:

docker volume create htdocs-volume
 
mkdir -p htdocs
cat >htdocs/index.html <<EOF
<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>Docker Nginx</title>
</head>
<body>
  <h2>Hello from Nginx container of `hostname`</h2>
</body>
</html>
EOF
docker container run \
    -v $(pwd)/htdocs:/htdocs \
    -v htdocs-volume:/htdocs1  \
    -ti --rm alpine /bin/sh
cp htdocs/index.html htdocs1
exit

Use Volume:

docker run -d --name web-server \
-v htdocs-volume:/usr/share/nginx/html nginx
 
# check content
docker exec web-server ls /usr/share/nginx/html
docker run --rm -ti --volumes-from web-server alpine /bin/sh
ls /usr/share/nginx/html
exit

Inspect

docker volume ls docker volume inspect htdocs-volume docker volume rm htdocs-volume
 
# hostpath bind mount
docker run --name mysql-db \
  -v $(pwd)/datadir:/var/lib/mysql
  -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:8.4.9
 
docker stop mysql.db
docker rm mysql-db
 
# or docker managed volume /var/lib/docker/volumes
docker volume create mysql-data
docker run --name mysql-db \
  -v mysql-data:/var/lib/mysql
  -e MYSQL_ROOT_PASSWORD=my-secret-pw -d mysql:8.4.9

NFS

admin_grundlagen/docker/docker_volumes_by_examples.txt · Zuletzt geändert: 2026/05/19 06:59 von peter_rossbach2