Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Docker #52

Open
ltguillaume opened this issue Oct 26, 2021 · 5 comments
Open

Docker #52

ltguillaume opened this issue Oct 26, 2021 · 5 comments
Labels
feature New feature or request help wanted Extra attention is needed

Comments

@ltguillaume
Copy link
Owner

I've dabbled a bit with creating a Docker solution for MFP, which can be found here: https://github.com/ltGuillaume/MusicFolderPlayer/tree/docker

This is pretty much the first time with Docker for me, and I only tried it locally, so I'm gonna need your feedback.

@ltguillaume ltguillaume added feature New feature or request help wanted Extra attention is needed labels Oct 26, 2021
@tiritibambix
Copy link

I'm sorry I discover your app only now.

I tried installing it following your docker-compose but it won't work, or I don't have the knowledge to make it work.

@ltguillaume
Copy link
Owner Author

I'm going to revisit this as soon as I set up my server differently, but it may be a while.

@ltguillaume
Copy link
Owner Author

@tiritibambix If you're interested, could you retry the Docker image?

@tiritibambix
Copy link

@ltguillaume Thank you for following up.

I tried installing following your instructions and docker-compose.
I am no expert, and I fail understanding parts of the config.

      - source: mfp
        target: /app/cfg
        type: volume

I want this bound to a specific location, so I guess this could work:

      - source: /path/to/mfp/folder
        target: /app/cfg
        type: bind

I had to create /path/to/mfp/folder first though, or I get an error.

The environment variables seem over-complicated for my knowledge.
What I usually do / is usually done with containered apps is that I specify a port and done !

If I take the example of navidrome: here's my stack, on a machine which local address is 192.168.1.104:

version: "3.3"
services:
  navidrome:
    image: deluan/navidrome:latest
    ports:
      - "4533:4533"
    volumes:
      - "/path/to/navidrom/folder:/data"
      - "/path/to/music/folder:/music:ro"
    restart: unless-stopped

I just then go to 192.168.1.104:4533 and I can start using it.

If I want to access it from outside using a domain, I just create a sub domain pointing to my public IP and I just use Nginx Proxy Manager like this:
Screenshot-2023-09-18-at-10-19-49-Nginx-Proxy-Manager.png
And voilà

I hope someone more experienced than me will read this and be the middle man as I fear I don't have what it takes to be of more help ':)

@ltguillaume
Copy link
Owner Author

ltguillaume commented Sep 18, 2023

@ltguillaume Thank you for following up.

I tried installing following your instructions and docker-compose. I am no expert, and I fail understanding parts of the config.

      - source: mfp
        target: /app/cfg
        type: volume

I want this bound to a specific location, so I guess this could work:

      - source: /path/to/mfp/folder
        target: /app/cfg
        type: bind

I had to create /path/to/mfp/folder first though, or I get an error.

While I'm not opposed to using a bind type volume here (even though Docker discourages it), unfortunately docker doesn't seem to support mounting a bind volume while building an image and I want to put some files in there when building.

The environment variables seem over-complicated for my knowledge. What I usually do / is usually done with containered apps is that I specify a port and done !

There is only a HOST (previously ADDRESS) and PORT. I have rarely seen containered apps using less environment variables than that, so I'm not sure what you mean. Navidrome just happens to have separated all of them into a file, see https://www.navidrome.org/docs/usage/configuration-options/#configuration-file

If I want to access it from outside using a domain, I just create a sub domain pointing to my public IP and I just use Nginx Proxy Manager

I'm using nginx-proxy, too, but the docker image supports a standalone way, too, creating SSL certificates automatically. For use behind a reverse proxy, you just need to set the two environment variables a little bit differently (HOST=http://some.domain and PORT=<highnumber>).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature New feature or request help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

2 participants