DLNA server for your self-hosted Nextcloud app instance.
10K+
DLNA addon for your self-hosted Nextcloud app instance that allows you to stream Nextcloud users content on client devices in your network. It supports the group folders as well.
you need to run the docker image with the net=host option e.g:
docker run -d \
--name="nextcloud-dlna" \
--net=host \
-e NEXTCLOUD_DLNA_SERVER_PORT=9999 \
-v /path/to/nextcloud/app/ending/with/data:/nextcloud \
-e NEXTCLOUD_DATA_DIR=/nextcloud \
-e NEXTCLOUD_DB_HOST='<your_nextcloud_db_host_ip_here>' \
-e NEXTCLOUD_DB_PASS='<your_nextcloud_db_pass_here>' \
nextcloud-dlna
Note that it would not work on Mac OS since docker is a Linux container and the host networking mode doesn't actually
share the host's network interfaces.
You can pass to the container the NC_DOMAIN and NC_PORT environment variables and force the container to check and wait for the nextcloud HTTP server to appear on the specified domain and port address.
You can pass to the container other env variables that are listed below:
| env variable | default value | description |
|---|---|---|
| NEXTCLOUD_DLNA_SERVER_PORT | 8080 | port on which the contentController will listen |
| NEXTCLOUD_DLNA_INTERFACE | (optional) interface the server will be listening on if not given, the default local address will be used | |
| NEXTCLOUD_DLNA_FRIENDLY_NAME | Nextcloud-DLNA | friendly name of the DLNA service |
| NEXTCLOUD_DATA_DIR | nextcloud installation directory (that ends with /data) | |
| NEXTCLOUD_SCANNED_FOLDERS | /** | folders to be exposed by the DLNA service (use Glob Pattern to enumerate your folders) |
| NEXTCLOUD_DB_TYPE | mariadb | nextcloud database type (mysql, mariadb, postgresql) |
| NEXTCLOUD_DB_HOST | localhost | nextcloud database host |
| NEXTCLOUD_DB_PORT | 3306 | nextcloud database port |
| NEXTCLOUD_DB_NAME | nextcloud | nextcloud database name |
| NEXTCLOUD_DB_USER | nextcloud | nextcloud database username |
| NEXTCLOUD_DB_PASS | nextcloud | nextcloud database password |
By default nextcloud-dlna scans all the folders that are available to serve, i.e. all users' folders and all global folders (if the Group folders feature is enabled in the Nextcloud config). You may filter the folders to be served by passing the env variable with the list of allowed folders using the Glob Pattern. In this pattern you can use the placeholders (precesed by a slash):
| Placeholder | Meaning |
|---|---|
* | any string in the path segment |
** | any one or more folders recursively (requires at least one segment) |
? | any character |
{foo,bar} | alternatives |
[abc] | one of the characters from the set |
Examples:
NEXTCLOUD_SCANNED_FOLDERS="/john,/jane,/jim,/joe" - will allow to scan only the four users' foldersNEXTCLOUD_SCANNED_FOLDERS="/**/music" - will allow to scan only the music folder of any user (e.g. /john/music or /john/rock/music, but not a top-level /music)NEXTCLOUD_SCANNED_FOLDERS="/{jim,joe}/**/music" - will allow to scan only the music folder of jim and joe usersNEXTCLOUD_SCANNED_FOLDERS="/**/{music,photos,movies}" - will allow to scan only the music,photos and movies folders of any userSee the Github repository for more details.
Content type
Image
Digest
sha256:abe088fd5…
Size
231.8 MB
Last updated
3 months ago
docker pull thanek/nextcloud-dlna