β² 844 βΌ If linux distributions were tools. (sh.itjust.works) submitted 2 years ago by _cnt0@sh.itjust.works to c/linuxmemes@lemmy.world 248 comments fedilink hide all child comments
[β] _cnt0@sh.itjust.works [S] 2 points 2 years ago (2 children) I don't know why, but it really is. You'd be surprised to see how many servers in the wild run ubuntu and how many docker images are based on ubuntu. permalink fedilink source parent hideshow 4 child comments replies: [β] dan@upvote.au 11 points 2 years ago* (3 children) Docker images should really be distroless most of the time. There's way too much junk in the majority of Docker images when in most cases, you really just need your app and whatever dynamic libraries or runtimes it requires (if you can't statically compile it). You don't need an OS in there! Also there'd be way more servers running Debian compared to Ubuntu. permalink fedilink source parent hideshow 6 child comments replies: [β] _cnt0@sh.itjust.works [S] 3 points 2 years ago (1 child) You often (if not most of the time) need some infrastructure in OCI containers (while we're at it, let's get rid of the misnomer Docker image). And that's going to be some subset of a distribution hand-crafted for that purpose. Most of the time, that should be Alpine, because they provide the slimmest base image. permalink fedilink source parent hideshow 2 child comments replies: [β] dan@upvote.au 2 points 2 years ago* (1 child) Most of the time, that should be Alpine, because they provide the slimmest base image. Distroless containers (e.g. https://github.com/GoogleContainerTools/distroless, Chiselled Ubuntu, etc) are often smaller than Alpine ones. Google's smallest Debian-based one is around 2MB. I have a Dockerized C# app... I'm going to try .NET Native AOT (which was improved a lot in .NET 8, released today) to compile it into a self-contained binary, and see how well it works with a distroless base container. permalink fedilink source parent hideshow 2 child comments replies: [β] _cnt0@sh.itjust.works [S] 3 points 2 years ago (1 child) I'm curious to hear how that works out. I'm a big fan of C#; not so much the Microsoft ecosystem. I'd say for maximum scalability you'd want languages which compile to small binaries. So, Go, Rust, C++, C, and theoretically some others. The approach with Java and C# to bundle the framework, JIT, etc, and then try to shave off as much as you can get away with feels kind of backwards. And I get the excitement of the Java folks when they manage to create a self-contained binary with GraalVM and co of 12mb. Like, that's impressive, but had you developed the same thing with Go it would be .5mb. Curious to see how .NET fares in that comparison to Java. permalink fedilink source parent hideshow 2 child comments replies: [β] Serdan@lemm.ee 1 point 2 years ago* In the dotnet 8 announcement the brag is that a minimal web service will be 8.5 megs https://learn.microsoft.com/en-us/aspnet/core/release-notes/aspnetcore-8.0?view=aspnetcore-8.0#native-aot permalink fedilink source parent [+] aniki@lemm.ee 1 point 2 years ago (1 child) [deleted] permalink fedilink source parent hideshow 2 child comments replies: [β] dan@upvote.au 1 point 2 years ago Google's distroless base images are based on Debian and are smaller than Alpine images. permalink fedilink source parent [β] FlexibleToast@lemmy.world -3 points 2 years ago Debian isn't really an option if you want paid support. You really only have Red Hat, SUSE, and Canonical. Of course, there are a lot of Ubuntu servers out there. permalink fedilink source parent [β] SpaceNoodle@lemmy.world 5 points 2 years ago (1 child) It's because of laziness. permalink fedilink source parent hideshow 2 child comments replies: [β] GBU_28@lemm.ee 1 point 2 years ago (1 child) There's a difference between lazy and focused on other things. permalink fedilink source parent hideshow 2 child comments replies: [β] SpaceNoodle@lemmy.world -1 points 2 years ago Potato, tomato. permalink fedilink source parent
[β] dan@upvote.au 11 points 2 years ago* (3 children) Docker images should really be distroless most of the time. There's way too much junk in the majority of Docker images when in most cases, you really just need your app and whatever dynamic libraries or runtimes it requires (if you can't statically compile it). You don't need an OS in there! Also there'd be way more servers running Debian compared to Ubuntu. permalink fedilink source parent hideshow 6 child comments replies: [β] _cnt0@sh.itjust.works [S] 3 points 2 years ago (1 child) You often (if not most of the time) need some infrastructure in OCI containers (while we're at it, let's get rid of the misnomer Docker image). And that's going to be some subset of a distribution hand-crafted for that purpose. Most of the time, that should be Alpine, because they provide the slimmest base image. permalink fedilink source parent hideshow 2 child comments replies: [β] dan@upvote.au 2 points 2 years ago* (1 child) Most of the time, that should be Alpine, because they provide the slimmest base image. Distroless containers (e.g. https://github.com/GoogleContainerTools/distroless, Chiselled Ubuntu, etc) are often smaller than Alpine ones. Google's smallest Debian-based one is around 2MB. I have a Dockerized C# app... I'm going to try .NET Native AOT (which was improved a lot in .NET 8, released today) to compile it into a self-contained binary, and see how well it works with a distroless base container. permalink fedilink source parent hideshow 2 child comments replies: [β] _cnt0@sh.itjust.works [S] 3 points 2 years ago (1 child) I'm curious to hear how that works out. I'm a big fan of C#; not so much the Microsoft ecosystem. I'd say for maximum scalability you'd want languages which compile to small binaries. So, Go, Rust, C++, C, and theoretically some others. The approach with Java and C# to bundle the framework, JIT, etc, and then try to shave off as much as you can get away with feels kind of backwards. And I get the excitement of the Java folks when they manage to create a self-contained binary with GraalVM and co of 12mb. Like, that's impressive, but had you developed the same thing with Go it would be .5mb. Curious to see how .NET fares in that comparison to Java. permalink fedilink source parent hideshow 2 child comments replies: [β] Serdan@lemm.ee 1 point 2 years ago* In the dotnet 8 announcement the brag is that a minimal web service will be 8.5 megs https://learn.microsoft.com/en-us/aspnet/core/release-notes/aspnetcore-8.0?view=aspnetcore-8.0#native-aot permalink fedilink source parent [+] aniki@lemm.ee 1 point 2 years ago (1 child) [deleted] permalink fedilink source parent hideshow 2 child comments replies: [β] dan@upvote.au 1 point 2 years ago Google's distroless base images are based on Debian and are smaller than Alpine images. permalink fedilink source parent [β] FlexibleToast@lemmy.world -3 points 2 years ago Debian isn't really an option if you want paid support. You really only have Red Hat, SUSE, and Canonical. Of course, there are a lot of Ubuntu servers out there. permalink fedilink source parent
[β] _cnt0@sh.itjust.works [S] 3 points 2 years ago (1 child) You often (if not most of the time) need some infrastructure in OCI containers (while we're at it, let's get rid of the misnomer Docker image). And that's going to be some subset of a distribution hand-crafted for that purpose. Most of the time, that should be Alpine, because they provide the slimmest base image. permalink fedilink source parent hideshow 2 child comments replies: [β] dan@upvote.au 2 points 2 years ago* (1 child) Most of the time, that should be Alpine, because they provide the slimmest base image. Distroless containers (e.g. https://github.com/GoogleContainerTools/distroless, Chiselled Ubuntu, etc) are often smaller than Alpine ones. Google's smallest Debian-based one is around 2MB. I have a Dockerized C# app... I'm going to try .NET Native AOT (which was improved a lot in .NET 8, released today) to compile it into a self-contained binary, and see how well it works with a distroless base container. permalink fedilink source parent hideshow 2 child comments replies: [β] _cnt0@sh.itjust.works [S] 3 points 2 years ago (1 child) I'm curious to hear how that works out. I'm a big fan of C#; not so much the Microsoft ecosystem. I'd say for maximum scalability you'd want languages which compile to small binaries. So, Go, Rust, C++, C, and theoretically some others. The approach with Java and C# to bundle the framework, JIT, etc, and then try to shave off as much as you can get away with feels kind of backwards. And I get the excitement of the Java folks when they manage to create a self-contained binary with GraalVM and co of 12mb. Like, that's impressive, but had you developed the same thing with Go it would be .5mb. Curious to see how .NET fares in that comparison to Java. permalink fedilink source parent hideshow 2 child comments replies: [β] Serdan@lemm.ee 1 point 2 years ago* In the dotnet 8 announcement the brag is that a minimal web service will be 8.5 megs https://learn.microsoft.com/en-us/aspnet/core/release-notes/aspnetcore-8.0?view=aspnetcore-8.0#native-aot permalink fedilink source parent
[β] dan@upvote.au 2 points 2 years ago* (1 child) Most of the time, that should be Alpine, because they provide the slimmest base image. Distroless containers (e.g. https://github.com/GoogleContainerTools/distroless, Chiselled Ubuntu, etc) are often smaller than Alpine ones. Google's smallest Debian-based one is around 2MB. I have a Dockerized C# app... I'm going to try .NET Native AOT (which was improved a lot in .NET 8, released today) to compile it into a self-contained binary, and see how well it works with a distroless base container. permalink fedilink source parent hideshow 2 child comments replies: [β] _cnt0@sh.itjust.works [S] 3 points 2 years ago (1 child) I'm curious to hear how that works out. I'm a big fan of C#; not so much the Microsoft ecosystem. I'd say for maximum scalability you'd want languages which compile to small binaries. So, Go, Rust, C++, C, and theoretically some others. The approach with Java and C# to bundle the framework, JIT, etc, and then try to shave off as much as you can get away with feels kind of backwards. And I get the excitement of the Java folks when they manage to create a self-contained binary with GraalVM and co of 12mb. Like, that's impressive, but had you developed the same thing with Go it would be .5mb. Curious to see how .NET fares in that comparison to Java. permalink fedilink source parent hideshow 2 child comments replies: [β] Serdan@lemm.ee 1 point 2 years ago* In the dotnet 8 announcement the brag is that a minimal web service will be 8.5 megs https://learn.microsoft.com/en-us/aspnet/core/release-notes/aspnetcore-8.0?view=aspnetcore-8.0#native-aot permalink fedilink source parent
[β] _cnt0@sh.itjust.works [S] 3 points 2 years ago (1 child) I'm curious to hear how that works out. I'm a big fan of C#; not so much the Microsoft ecosystem. I'd say for maximum scalability you'd want languages which compile to small binaries. So, Go, Rust, C++, C, and theoretically some others. The approach with Java and C# to bundle the framework, JIT, etc, and then try to shave off as much as you can get away with feels kind of backwards. And I get the excitement of the Java folks when they manage to create a self-contained binary with GraalVM and co of 12mb. Like, that's impressive, but had you developed the same thing with Go it would be .5mb. Curious to see how .NET fares in that comparison to Java. permalink fedilink source parent hideshow 2 child comments replies: [β] Serdan@lemm.ee 1 point 2 years ago* In the dotnet 8 announcement the brag is that a minimal web service will be 8.5 megs https://learn.microsoft.com/en-us/aspnet/core/release-notes/aspnetcore-8.0?view=aspnetcore-8.0#native-aot permalink fedilink source parent
[β] Serdan@lemm.ee 1 point 2 years ago* In the dotnet 8 announcement the brag is that a minimal web service will be 8.5 megs https://learn.microsoft.com/en-us/aspnet/core/release-notes/aspnetcore-8.0?view=aspnetcore-8.0#native-aot permalink fedilink source parent
[+] aniki@lemm.ee 1 point 2 years ago (1 child) [deleted] permalink fedilink source parent hideshow 2 child comments replies: [β] dan@upvote.au 1 point 2 years ago Google's distroless base images are based on Debian and are smaller than Alpine images. permalink fedilink source parent
[β] dan@upvote.au 1 point 2 years ago Google's distroless base images are based on Debian and are smaller than Alpine images. permalink fedilink source parent
[β] FlexibleToast@lemmy.world -3 points 2 years ago Debian isn't really an option if you want paid support. You really only have Red Hat, SUSE, and Canonical. Of course, there are a lot of Ubuntu servers out there. permalink fedilink source parent
[β] SpaceNoodle@lemmy.world 5 points 2 years ago (1 child) It's because of laziness. permalink fedilink source parent hideshow 2 child comments replies: [β] GBU_28@lemm.ee 1 point 2 years ago (1 child) There's a difference between lazy and focused on other things. permalink fedilink source parent hideshow 2 child comments replies: [β] SpaceNoodle@lemmy.world -1 points 2 years ago Potato, tomato. permalink fedilink source parent
[β] GBU_28@lemm.ee 1 point 2 years ago (1 child) There's a difference between lazy and focused on other things. permalink fedilink source parent hideshow 2 child comments replies: [β] SpaceNoodle@lemmy.world -1 points 2 years ago Potato, tomato. permalink fedilink source parent