www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - What's our container story?

reply Lance Bachmeier <no spam.net> writes:
With Apple's [Containerization announcement 
yesterday](https://www.youtube.com/watch?v=JvQtvbhtXmo) and 
GitHub Codespaces running Linux containers, it appears the 
container thing is a big deal. I admit I don't know a lot about 
them beyond playing with Docker a few years back.

Looking at Docker Hub, I see there is an organization called 
dlangdockerized that makes semi-recent releases of DMD and LDC 
available. Do we have any getting started documentation 
available, and do we provide any other containers (for instance, 
to do web development)? I plan to use GitHub Codespaces for a 
class I'm teaching next semester. It would sure be nice to have 
some guidance on getting things up and running. This seems to be 
the extent of the documentation: `docker pull 
dlangdockerized/dmd` and then the user is on their own to figure 
out the rest.
Jun 10
next sibling parent Dukc <ajieskola gmail.com> writes:
On Tuesday, 10 June 2025 at 15:10:15 UTC, Lance Bachmeier wrote:
 With Apple's [Containerization announcement 
 yesterday](https://www.youtube.com/watch?v=JvQtvbhtXmo) and 
 GitHub Codespaces running Linux containers, it appears the 
 container thing is a big deal. I admit I don't know a lot about 
 them beyond playing with Docker a few years back.

 Looking at Docker Hub, I see there is an organization called 
 dlangdockerized that makes semi-recent releases of DMD and LDC 
 available. Do we have any getting started documentation 
 available, and do we provide any other containers (for 
 instance, to do web development)? I plan to use GitHub 
 Codespaces for a class I'm teaching next semester. It would 
 sure be nice to have some guidance on getting things up and 
 running. This seems to be the extent of the documentation: 
 `docker pull dlangdockerized/dmd` and then the user is on their 
 own to figure out the rest.
[Kaj Nackes post](https://dlang.org/blog/2019/03/14/containerize-your-d- erver-application/) on our official blog is probably the best starting point. Personally, I use Nix to build my docker containers. I don't have to know much about Docker, in fact I've never written a dockerfile! I also get extremely small containers since Nix will only put what really is needed to the container. No base OS image needed! It does mean you have to learn Nix and most likely also [Lionellos dub2nix](https://github.com/lionello/dub2nix).
Jun 10
prev sibling next sibling parent Sergey <kornburn yandex.ru> writes:
On Tuesday, 10 June 2025 at 15:10:15 UTC, Lance Bachmeier wrote:
 running. This seems to be the extent of the documentation: 
 `docker pull dlangdockerized/dmd` and then the user is on their 
 own to figure out the rest.
Previously there was most up-to-date repo from China: https://github.com/dlangchina/docker-dlang/tree/master But now dlangdockertized is handled by Elias and Jonas - I would say should be recommended image for usage. As usual DLF doesn’t care about production level things, but at least we have some heroes in community :)
Jun 10
prev sibling parent laserovsky <laserovsky gmail.com> writes:
On Tuesday, 10 June 2025 at 15:10:15 UTC, Lance Bachmeier wrote:
 With Apple's [Containerization announcement 
 yesterday](https://www.youtube.com/watch?v=JvQtvbhtXmo) and 
 GitHub Codespaces running Linux containers, it appears the 
 container thing is a big deal. I admit I don't know a lot about 
 them beyond playing with Docker a few years back.

 Looking at Docker Hub, I see there is an organization called 
 dlangdockerized that makes semi-recent releases of DMD and LDC 
 available. Do we have any getting started documentation 
 available, and do we provide any other containers (for 
 instance, to do web development)? I plan to use GitHub 
 Codespaces for a class I'm teaching next semester. It would 
 sure be nice to have some guidance on getting things up and 
 running. This seems to be the extent of the documentation: 
 `docker pull dlangdockerized/dmd` and then the user is on their 
 own to figure out the rest.
I've been maintaining a Docker image for DMD for a while now: πŸ”— https://hub.docker.com/r/starxen/dmd It supports both Linux-based containers (Debian, Ubuntu, Fedora, openSUSE) and Windows containers. I'm trying to follow the same standards as the official Docker images like PHP or Node.js – aiming for clarity, modularity, and best practices. The image is kept up to date with the latest DMD versions. You'll find links to the documentation, GitLab repo, CI pipeline history, and more in the description. If you're using Docker and DMD – feel free to try it out and share any feedback πŸ™‚
Jun 18