Skip to content

Commit

Permalink
Clarify Readme on bind volumes
Browse files Browse the repository at this point in the history
Signed-off-by: Kaloyan Nikolov <[email protected]>
  • Loading branch information
tzerber committed Oct 17, 2024
1 parent 178f8b6 commit 53c3162
Showing 1 changed file with 24 additions and 1 deletion.
25 changes: 24 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -87,13 +87,36 @@ If you want to use named volumes for all of these, it would look like this:
```console
$ docker run -d \
-v nextcloud:/var/www/html \
-v apps:/var/www/html/custom_apps \
-v custom_apps:/var/www/html/custom_apps \
-v config:/var/www/html/config \
-v data:/var/www/html/data \
-v theme:/var/www/html/themes/<YOUR_CUSTOM_THEME> \
nextcloud
```

If you'd prefer to use bind mounts instead of named volumes, for instance, when working with different device or network mounts for user data files and configuration:
```console
$ docker run -d \
-v $(pwd)/nextcloud:/var/www/html \
-v $(pwd)/custom_apps:/var/www/html/custom_apps \
-v $(pwd)/config:/var/www/html/config \
-v $(pwd)/data:/var/www/html/data \
-v $(pwd)/theme:/var/www/html/themes/<YOUR_CUSTOM_THEME> \
nextcloud
```

Here’s the same example using Docker's more detailed `--mount`. Note that with `-v` or `--volume`, the specified folders are created automatically if they don't exist. However, when using `--mount` for bind mounts, the directories must already exist on the host, or Docker will return an error.
```console
$ docker run -d \
--mount type=bind,source=$(pwd)/nextcloud,target=/var/www/html \
--mount type=bind,source=$(pwd)/custom_apps,target=/var/www/html/custom_apps \
--mount type=bind,source=$(pwd)/config,target=/var/www/html/config \
--mount type=bind,source=$(pwd)/data,target=/var/www/html/data \
--mount type=bind,source=$(pwd)/theme,target=/var/www/html/themes/<YOUR_CUSTOM_THEME> \
nextcloud
```
The examples above use the current directory for bind mounts. If this isn't suitable, you can modify the paths by using either a relative or absolute path. Additionally, do not mix the `apps` and `custom_apps` folders. These folders contain different sets of apps, and mixing them will result in a broken installation. While upgrades\recovery may sometimes still be possible, this configuration is likely to cause issues.

### Custom volumes

If mounting additional volumes under `/var/www/html`, you should consider:
Expand Down

0 comments on commit 53c3162

Please sign in to comment.