this post was submitted on 06 Apr 2024
43 points (95.7% liked)

Selfhosted

40329 readers
419 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 1 year ago
MODERATORS
 

I have a really bad "server" (just a laptop) that runs Fedora Server and uses Docker Compose to host Jellyfin. It has been very annoying to update (the web GUI for Fedora doesn't even work half of the time), updating is painful, and it's a pain to manage. I am trying to redo my entire setup, so I will be getting a NAS to store all of my media. However, I still want to host apps like Nextcloud and Jellyfin, but I'm probably just going to use the NAS as storage for such apps.

Should I:

  • use CasaOS, Yunohost, or a different easy to use server OS
  • stick with Fedora server
  • use a different distro

If I should use a conventional server distro (Fedora, Debian, Ubuntu), suggestions for management GUIs, easy to use Docker management GUIs, and ways to set up file sharing (Samba configuration seems like a pain) are greatly appreciated.

(side note: I use Docker bind mounts and they seem to allow me to update my Jellyfin content through SFTP/whatever the SSH-based file transfer protocol is. Is there a point in me switching to volumes? I haven't taken my container down manually since I first started it up)

you are viewing a single comment's thread
view the rest of the comments
[–] mholiv@lemmy.world 5 points 7 months ago (1 children)

There is a lot here but I think the most important thing is that docker containers should always be disposable. Don’t put any data into the container ever.

All of your data and configuration should be done in volumes. Local disk to inside the container is all you really need.

By doing this you make updating any given docker container easy as just pulling the newest tagged version of the container. If you are using docker and not podman you can use tools like watchtower to do this automatically.

As for what distro, it depends on your goals. Do you want to learn and improve your skills? Stick with Fedora or Rocky or Debian or openSUSE. I recommend learning the command line as you go, but if you want a nice UI openSUSE has Yast which is a very robust tool.

If you want to just have a home NAS but don’t want to learn that’s a different question. In this case if you’re getting a proprietary NAS anyway you could just get one that supports docker (like synology) and kill 2 birds with 1 stone.

[–] tester1121@lemmy.world 1 points 7 months ago (1 children)

Don’t put any data into the container ever. All of your data and configuration should be done in volumes. So are bind mounts (--bind) to the filesystem bad? Am I able to access Docker volumes through SFTP/SSH?

[–] mholiv@lemmy.world 2 points 7 months ago (1 children)

You should use volumes over bind. You just move your media into the volume location on the local host and try will show up in docker. You should never need to ssh or sftp into the container.

[–] tester1121@lemmy.world 1 points 7 months ago (1 children)

Is a Docker volume accessible like a folder if I SSH/SFTP into the host machine, not the container?

[–] mholiv@lemmy.world 1 points 7 months ago

Yes. The left side of the : in the volume is the file on the host. You can see this directory on the host. The right side of the : is where that directory is replicated into the docker container.

All you need to do is to interact with the directory on the host.