Comments (6)
@n00ris
Here's my solution using docker-compose.
Directory structure:
minidlna/
|-- Dockerfile # edited from this repo
|-- data
| |-- cache
| | |-- art_cache
| | `-- files.db
| |-- minidlna.log
| `-- minidlna.pid
|-- docker-compose.yml
`-- entrypoint.sh # from this repo
Dockerfile
FROM alpine
RUN apk --no-cache add bash curl tini shadow su-exec
# Add minidlna 1.3 latest
RUN apk --no-cache -X https://dl-cdn.alpinelinux.org/alpine/edge/community/ add minidlna
COPY entrypoint.sh /
ENTRYPOINT ["/sbin/tini", "--", "/entrypoint.sh"]
# Health check, changed localhost to 127.0.0.1 as 'localhost' was failing
HEALTHCHECK --interval=10s --timeout=10s --retries=6 CMD \
curl --silent --fail 127.0.0.1:8200 || exit 1
docker-compose.yml
version: '3.3'
services:
minidlna:
build: .
network_mode: host
volumes:
- '/home/user/mounted:/media:ro'
# persistent volume so that the database survives system reboots and container restarts
- './data:/minidlna'
- '/etc/localtime:/etc/localtime:ro'
environment:
- MINIDLNA_MEDIA_DIR=/media
- MINIDLNA_FRIENDLY_NAME=Arch-Play
- PUID=1000
- PGID=1000
container_name: minidlna
Then, just docker-compose up -d
to start.
If you need to update in the future, you have to docker-compose build
.
from docker_base_images.
Hi @accountForIssues. Thank you for sharing your docker compose file.
My use case: I have family members that should at least be able to restart or update minidlna.
So it should be possible with portainer, a graphical UI to manage docker. After an initial setup (that I can prepare), it makes updates very easy to allow you to pull latest image and re-create. That level works for my family members :-)
EDIT: Unfortunetaly I am not aware to add docker compose files and individual commands like "add repository and patch yourself" via portainer.
from docker_base_images.
I don't have much experience using Portainer to manage containers but I'm pretty sure there is a way to do it. There is no need to pull the repo to run the compose files though.
It's not exactly UI based but you can create simple shell scripts to start, restart, reset or update (quite rare for minidlna) when needed. It's better than telling your family to run commands in a terminal :)
from docker_base_images.
@accountForIssues
Here's my solution using docker-compose.
Thanks for this. I used it as a basis for my own container and it's working great. Hopefully this can be committed to the main repo.
By the way, does DLNA just stream the raw video file to the video player? ...or does it perform any transcoding, etc?
from docker_base_images.
Hi @vladgh. Can you please redeploy minidlna to bump its version on docker hub please?
from docker_base_images.
Hi All, sorry for the very long delay in answering this!
The packaged version in the latest Alpine Linux is 1.2.1-r2, last patched in 2020-12-15. I thought a long time about upgrading MiniDLNA to 1.3.0, but I decided to stick with the upstream version from Alpine, because of stability and reliability. When a new version of Alpine will be released, it will come with the new MiniDLNA. This follows the usual Linux release cycle.
There are 2 ways of upgrading the package, and I don't support any of them:
- One is to add the edge repository and install it from there;
Warning: "edge" is under constant development so be careful using it in production. It is possible that bugs in "edge" could cause data loss or could break your system.
- And second is to manually compile the package from https://sourceforge.net/projects/minidlna/files/minidlna/. This comes with maintenance of pre/post install scripts and dependencies.
from docker_base_images.
Related Issues (20)
- [minidlna] [feature request] Add UID and GID HOT 1
- Latest docker image for minidlna does not seem to start HOT 4
- How to set translation HOT 4
- Latest image won't start (/etc/group.8: Permission denied) HOT 2
- [minidlna] How to make miniDLNA work remotely over ZeroTier? HOT 2
- [minidlna] /minidlna/cache/files.db on persistent volume HOT 9
- [minidlna] support timezone
- [minidlna] Ошибка работы со всеми сборками, после 0.5.0 HOT 14
- [minidlna] MiniDLNA not showing me any playlists HOT 7
- Dependency Dashboard
- Adding inotify to entrypoint.sh HOT 1
- MiniDLNA: File Permissions HOT 2
- MiniDLNA root_container HOT 3
- [MiniDLNA+podman] Health check always fails HOT 5
- Action Required: Fix Renovate Configuration
- [minidlna] BrowseContentDirectory Returning UPnPError 402 - Invalid Args HOT 1
- Healthcheck don't pass when minidlna tcp port is changed. HOT 8
- MiniDLNA. ERROR: no matching manifest for linux/arm/v7 in the manifest list entries HOT 3
- [s3sync] ModuleNotFoundError: No module named 'six' HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from docker_base_images.