Next evolution, just a one line bash script.
Me: install it, doesn’t work, read the docs, screw with all the missing things, doesn’t work, read the forms, install something else I missed, doesn’t work, find more forums, find the right answer, patch it up, get it working, figure out that the application is slow, missing critical features, and really just doesn’t do what I needed to do.
All-in-all a weekend well spent
It’s like I’m still in c/selfhosted
Or it does work, and then I never actually end up using it again.
And then months later I’ll have to do something similar and I’ve forgotten I even installed something that can do that, so I install another related thing.
really just doesn’t do what I needed to do.
This has been my experience, or sort of does what I want it to do, but I have to rethink what I need it to do instead of something really simple. Like a “new type of shared file system” that replaces NFS/Windows sharing. So instead of files in a standard file system one can manage with a file browser, it has “indexed” your files in such a way that the actual files are renamed into data chunks, and one “finds” files by their non-intuitive search engine that can’t do even basic search engine tricks like “AND/OR” searches, wildcards, and the results are hit and miss. “But it’s faster and more elegant!” So how do you restore from backup when the system fails? “When the system does whatnow?”
Yeah, no thanks. I can recover files from a file system much easier than some proprietary encoded bullshit fronted with a bad search engine over a proprietary and buggy index.
I asked the other week if anyone made a system that left files alone and just indexed them and gave you a place to store meta without moving them. Options do seem to exist, but they need LOTS of extra work
I was blown away how a relatively unknown project like immich provides one Docker compose file to bring up a whole self-hosted
Google photosphoto management suite, complete with tagging, mapping, transcoding and semantic search. Local, offline semantic search.I got into the idea of selfhosting my photos, and wanted facial recognition to search them. I also wanted a selfhosted chat server. Nextcloud came as the obvious choice that did both. After days of tinkering and fixing errors in the log one by one, everything worked except the facial recognition which said everything was fine but the faces just didn’t get recognised. Also the mobile experience for Memories wasn’t the best. Then luckily I came across immich and it was up and running in about 5-6 mins of configuration max, and it has better facial recognition than the main big commercial option. Insane. For chat I got a synapse server with coturn which also took about 15 mins of docker composing and setting configurations/accounts to my liking.
(I still think Nextcloud is cool but it’s overkill and loaded with too many features I don’t need + installation is a task & documentation/online support communities are scattered between the various methods of installation)
Removed by mod
I’m having a hard time getting into software that doesn’t use traditional folder structures. I wish I could point immich to my NAS Pictures folder and have multiple places to seen the same exact files, immich when I want, nextcloud maybe, or just a file browser pointed to my NAS.
I’m having the same issue with paperless-ngx. I set it up and it’s cool, but why can’t I just point it to my Documents folder? I’m getting all of my 2023 taxes ready and now I have to upload them into two places, paperless-ngx for my records and Nextcloud so I can ultimately share a link with my accountant.
Am I old man yelling at cloud-ing right now? Why get rid of basic folder structures I just don’t get it
There are external libraries in immich. You point folder path to immich and you can see everything, but you cant eddit or delete
Here’s the docs: https://immich.app/docs/guides/external-library/
Immich does use traditional folders (it’s one of the parameters) but it does a copy there. It stores the pictures in multiple formats/resolutions and does some caching and whatnot, so it probably wouldn’t be a nice sight. Right now. On the other hand it does organize your collection in the pattern that you give it, for instance year/month/day_hour_minute.jpg. It could probably be implemented in the future to have the meta-images somewhere hidden and leave the collection alone, but that all requires effort and coordination. And everyone has their photos organized in their own little snowflake method.
Having said that, I totally understand your point. I’ll yell at the cloud with you.
As someone that uses FreeBSD as its main server, it’s kinda the other way around haha
Masochist
This oh my God. Just the other day I tried to install a project off git, it had a nice little .bat file to install all the requirements except half if them just didn’t exist or were so niche I couldn’t find anything on them after searching. Would love more dockers please.
.bat?
*starts loading shotgun.
Surely you mean .sh, right?
Ah well, maybe he used to much aliases? starts sweating in penguin costume
Naw they only had windows projects. I run all my stuff through VMware. Gotta have windows for stupid easy anti-cheat. Trust me I only use it when I have to, please put the gun down mr railcar!
Bat scripts should die. Switch to PowerShell instead.
Cursed project: provides
.ps1
file for *nix configuration,.sh
for Windows configuration (using git bash)
For me it’s more like new interesting self hosted project and then find out it’s only distributed as a docker container without any proper packaging. As someone who runs FreeBSD, this is a frustration I’ve run into with quite a number of projects.
Eh even as a Linux admin, I prefer hand installs I understand over mysterious docker black boxes that ship god knows what.
Sure, if I’m trialing something to see if it’s worth my time, I’ll spin up a container. But once it’s time to actually deploy it, I do it by hand.
Same. Frustrating when you have to go digging for non-Docker instructions.
If it’s an open-source project, usually the dockerfiles are available for reading.
Do you audit every line of code that you run in production? If you are trying some new python/django/sql app, are you reviewing all that?
I’d assume with a python based project, you’d be able to at least look at requirements and tell there’s something that sets off red flags. And you are either familiar/trust the maintainer, or you are reviewing the actual python itself?
Beyond that, the dockerfile is essentially just installation instructions for getting it running on a virgin system of X distribution. I wouldn’t call that a black box.
If the container isn’t part of an open source project, then this is a moot point then. The project itself is a black box.
You do you. Speaking for myself, I prefer to understand and be able to trivially inspect and modify the moving parts in the things I deploy so I have a snowball’s chance in hell of debugging and fixing things when something inevitably goes wrong.
All I hear is FUD.
And all I see is someone taking this conversation way too personally.
You sound like someone who doesn’t want to save 10 minutes of work every day because it might cost you half an hour every month.
deleted by creator
yes very much agreed on this. docker is awesome but imo the reliance on it will absolutely cause issues down the line
Sorry but IMO that’s FUD.
The reliance on it legitimately prevents the issues that it’s likely to cause. It’s made to be both idempotent and ephemeral.
Give an example of a Python project. You make a venv and do all your work in there. You then generate a requirements with all the versions pinned. You start build a container on a pinned version of alpine, or Ubuntu, or w/e. Wherever possible, you are pinning versions.
With best practices applied, result is that the image will be functionally the same regardless of what system builds it, though normally it gets built and stored on a registry like Docker Hub.
The only chance a user has to screw things up is in setting environment variables. That’s no different than ever before. At least now, they don’t have to worry about system or language-level dependencies introducing a breaking change.
Does Qemu work for you?
Virtualization in general? Sure, I can. I’ve tried it a bit with bhyve. But it’s definitely a lot heavier since I’m now running a full Linux os and dedicating resources to it to run docker just to run a python or node app.
Learning the project is in Go though is a sigh of relief. Professionally I’ve moved to Go (from Python) just because it’s so damn easy to build and distribute.
I just wish there was better support for the other *nix’s. While the language support them just fine, docker on the other hand strangles it. =(
I’m the opposite because I’ve had nothing but bad luck with docker. I should really spend more time with it but ugh
Try running portainer. Gives you a nice management GUI. Docker didn’t unlock for me until I started using portainer.
Portainer is huge and could be frustrating because too many settings. I prefer tools like dockge, yacht, or casaOS.
I was the same with Kubernetes until I started using Lens to monitor the clusters.
I’m like that. It feels like a total waste of resources, and introduces unneeded complexity for backup, updates, file access, networking and general maintenance.
I would take a deb repo over docker any day of the week.
It’s definitely worth learning. I had the damnedest time with docker until I went to a meetup and had someone ELI5 to me. And it wasn’t that I wasn’t technical. I just couldn’t wrap my head around so many layers of extraction.
The guy was very patient with me and helped me get started with docker compose and the rest is history.
Abstraction?
When the project installation steps start with a ‘git clone’.
I have a couple scripts running in containers. I’m too lazy to do a proper CI build and I only run it on one system anyway so I just got pull and docker build. Sorry if i offend you.
Though if i keep this up I’ll probably just start to use my generic python container and commit a shell script to docker run with . mounted to /project or something, and set the entry point to pip install project/requirements.txt; python project/main.py.
Nah, to much work, use curl to download a script and blindly run it…
As a NixOS user, I pick whatever is supported well as a NixOS package.
Sometimes I’m too lazy for that :p
Building a docker container isn’t normally to hard. I usually will create a PR with a dockerfile and docker compose
I believe this to be true for nearly all products. It has to be super simple to test, because you need to assess if it fits your needs. The mental model for a priori assessment is not strong enough usually.
Yeah no thanks I actually enjoy customizing my installs and not relying on docker for config management which it really shouldn’t be used for.
Only container I have that was well worth it is the OSX vm which makes it easy to swap versions and options without having to coax the crappy apple software.
Which I also only have because I thought it’d be funny to demo bluebubbles to my friends.
It’s because I’ve seen What people can do with a simple docker container that I completely agree. It’s too nice to go back.
I’d agree more if most docker stuff didn’t depend on running as root.
I think your looking for podman
yeha, but the big projects like linuxserver.io love creating docker images with root access, even if people have warned them it is an awful security practice. I rewrote all of their images in a personal repo, screw that. I won’t run shit as root in my machine, even in containers.
Ah to be young and have that kind of energy… Enjoy it!
And time
There’s rootless docker, or podman, or numerous other container runtimes. The beauty in containers is separating concerns. How you choose to run it, root or rootless, is up to you in all but the nichest of scenarios.
Rootful docker and rootless docker can be run at the same time on the same machine too. So projects that require root privileges can still work on a machine where most other projects run as rootless.
I was so surprised by how easy it was to install Yacy–I’d thought a self-hosted search engine would be tough, but I made a docker-compose file and pointed my reverse proxy to the server, works perfectly so far!
unpopular opinion docker is the worst creation in webdev besides js and react
Not only unpopular, but objectively wrong!
I find docker to be very useful as it makes the environment highly predicable while allowing your code to run anywhere
Docker for webdev? You know that Docker is server side right?
Explain?
I despise docker/containers.
Stop pushing the popularity of Docker. It is proprietary software and runs completely opposite to the ideals of GNU/Linux.
Docker is open source, licensed under Apache-2.0. Not really sure what you’re talking about.
While docker is open source I have no idea why systemd nspawn containers aren’t more popular. Most systems have this built in without needing to install 3rd party software. And I find using it so much easier. I assign each container an IP address and manage them all with ansible. It provides isolation and convenience while not trying to reinvent the wheel.
deleted by creator