this post was submitted on 25 Feb 2024
140 points (91.7% liked)
Linux
48181 readers
1163 users here now
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
There's not a fantastic GUI for managing docker. There are a few like dockge (my favorite) or Portainer.
I recommend spending some time learning
docker run
with exposed ports, bind volumes (map local folders from your drive to folders inside the container so you can access your files, configs, content, etc. Also so you don't lose it when you delete the container and pull a newer version).Once you've done that, check out the spec page for
docker-compose.yaml
. This is what you'll eventually want to use to run your apps. It's a single file that describes all the configuration and details required for multiple docker containers to run in the same environment. ie: postgres version 4.2 with a volume and 1 exposed port, nginx latest version with 2 volumes, 4 mapped ports, a hostname, restart unless-stopped, and running as user 1000:1000, etc.I've been using docker for home a LIGHT business applications for 8 years now and
docker-compose.yaml
is really all you need until you start wanting high availability and cloud orchestration.Some quick tips though.
some-FOSS-app-name docker-compose
read through a dozen or so templates. Check the spec page to see what most of the terms mean. It's the best way to learn how to structure your own compose files later.compose.yaml
files as templates to start from. Expect to change a few things for your own setup.restart: always
. Never. Change it torestart: unless-stopped
. Nothing is more annoying than stopping an app and having it keep doom spiraling. Especially at boot./srv/dumb-app/data:/data
then anything that container saves to the/data
folder is accessible to you on your host machine (with whatever user:group is running inside the container, so check that). If you use the docker volumes like EVERYONE seems to like doing, it's a pain to ever get that data back out if you want to use it outside of docker.