Live data from Hacker News

Irssi: IRC client in a Docker image

hub.docker.com

31–40 of 63 posts

Re: Irssi: IRC client in a Docker image

#31
post #2

This seems absurd. Just apt install irssi. Why Docker for such a simple self contained tiny app?

It's not absurd. First of all I've been using immutable Linux for 3 years so running Irssi in a container makes the most sense. Of course I'd probably just run it inside a distrobox container instead. And also I've been using a shell server for irssi for many years so it's not that relevant.

But secondly, containerization, despite its vulnerabilities through the years, does add a layer of security to applications. And we must not forget that irc clients have been exploited in the past. Remember the old adage, never irc as root.

Re: Irssi: IRC client in a Docker image

#32
post #3
post #2

This seems absurd. Just apt install irssi. Why Docker for such a simple self contained tiny app?

I ran irssi for years. I agree... Maybe being paranoid about security?

I don't think it's being paranoid. It's a remotely controlled parser. Fuzzing has turned up some of bugs in irssi and weechat over the years. Things like malformed color codes, DCC filenames, or even basic protocol messages led to crashes.

I personally use weechat inside nsjail on a raspberry pi (isolated rpi is enough here, but just for fun): https://github.com/google/nsjail/tree/master/configs

Re: Irssi: IRC client in a Docker image

#33
post #30

Earlier quoted context omitted.

I run a ton of apps like this. Look at it the other way. Why muck up my OS with a bunch of tiny apps? Who knows what version I’ll pull in my repo today. Chances are good it’s outdated with weird patches. The docker image is built by the devs. All the proper dependencies are baked into the image. It’s going to run exactly as intended every time, no surprises. And I can pick up the docker file and my configs and run it…

I love watching this in tech, the pendulum swings, this is static linking in another dress, Soon everyone adopts this, and then someone complains “why is there 500 libc libraries on my machine” or “there was critical bug and I had to update 388 containers - and some maintainers didn’t update and it’s a giant mess!” Then someone will invent dynamic underlying container sharing (tm) and the pendulum will swing the othe…

We need a static linux distro, because i prefer to have a portable app that works on all linux distros.

Re: Irssi: IRC client in a Docker image

#34
post #25

Earlier quoted context omitted.

I run a ton of apps like this. Look at it the other way. Why muck up my OS with a bunch of tiny apps? Who knows what version I’ll pull in my repo today. Chances are good it’s outdated with weird patches. The docker image is built by the devs. All the proper dependencies are baked into the image. It’s going to run exactly as intended every time, no surprises. And I can pick up the docker file and my configs and run it…

The docker image is built by the devs. Not in this case, it isn't. All of the things you describe are just "package manager, but outside distro control," which is fine I guess but not really a meaningful answer.

I think the real answer is that distro packaging sucks; it tends to involve arcane distro-specific tools and introduce as many or more bugs than it fixes (with the added problem of playing hot potato with the bug reports), on top of delaying updates. Really, what do you gain by using distro packages? (I know the answer is supposedly that you get a set of well-tested versions of your applications that play nice with each other, but that's rarely been delivered in practice)

Re: Irssi: IRC client in a Docker image

#35

Is it possible to run multiple instances of this, so I could join an irc server that I also spin up in another docker instance and then have a rousing conversation with myself???

I'm curious what makes you think "multiple instances" when you see this? You realise operating systems have been able to run multiple processes for decades, I assume? And you probably think nothing of running multiple shells, web browsers etc? None of this has anything to do with Docker.

I've noticed a lot of people seem to think Docker is some dark art technology when it's really just an amalgamation of various things that you can do anyway.

Incidentally, when I was on dial up and before I had a home network (just one family PC) I started to learn networking by running things like IRC servers (unrealircd to be specific) and multiple clients locally (including eggies). I was really talking to myself in every sense. Was quite fun to give myself ops etc.

Re: Irssi: IRC client in a Docker image

#37
post #2

This seems absurd. Just apt install irssi. Why Docker for such a simple self contained tiny app?

I can see a use running in a Kubernetes cluster or something. Not really sure why you would but I'm sure someone, somewhere has found it useful before.

What I'm confused about is why it's notable enough to be on the front page of HN. If you needed this and you use K8s you could trivially write this Dockerfile yourself.

Re: Irssi: IRC client in a Docker image

#38
I find part of the fun of dockerising small apps is in trying to get the image as small as possible with as few files in it as I can. This one looks like it still contains a lot of stuff that's not needed.

For example, my exim image https://hub.docker.com/r/grepular/exim4 is built like this: https://gitlab.com/grepular/docker-exim4/-/blob/main/Dockerf... - The final image only contains the necessary executables, shared lib files, CA certs, timezone files, a few other bits and nothing else.

Re: Irssi: IRC client in a Docker image

#39
post #12
post #2

This seems absurd. Just apt install irssi. Why Docker for such a simple self contained tiny app?

For my homelab: portable state. I don't use this image specifically but I use many others. I put docker-compose files in ~/configdata/_docker/ The docker-compose files always mount volumes inside the ~/configdata/ directory. So let's say irssi has a config directory to mount I'd mount it to ~/configdata/irssi/config/ Then I can just run a daily backup on ~/configdata/ using duplicati or whatever differential backup t…

Sure, this makes sense for a server, but irssi is a client. This is just a program running on your computer. You don't need a "homelab" or any nonsense like that.

Re: Irssi: IRC client in a Docker image

#40

I find part of the fun of dockerising small apps is in trying to get the image as small as possible with as few files in it as I can. This one looks like it still contains a lot of stuff that's not needed. For example, my exim image https://hub.docker.com/r/grepular/exim4 is built like this: https://gitlab.com/grepular/docker-exim4/-/blob/main/Dockerf... - The final image only contains the necessary executables, shar…

Wonder if you could go smaller if you used debian:stable-slim and used exim-daemon-light. Also dropping SUID if you don’t absolutely need it.
Post reply on HN