Containerize Your D Server Application

Jacob Carlborg doob at me.com
Thu Mar 14 19:35:41 UTC 2019


On 2019-03-14 13:38, Mike Parker wrote:
> One of the items on my list of "things I'd like to do if I only had the 
> time" is to create a Mud server with D and deploy it with Docker. Just 
> for kicks. If I ever do get around to it, my ignorance of all things 
> Docker will not be the time sink it could have been thanks to this 
> latest post on the D Blog by Kai Nacke.
> 
> The Blog
> https://dlang.org/blog/2019/03/14/containerize-your-d-server-application/
> 
> Reddit
> https://www.reddit.com/r/programming/comments/b0zqck/containerize_your_d_server_application/ 
> 

For reducing the container image I recommend building what's called a 
"microcontainer" [1]. It's a container that only contains exactly what's 
needed to run the application, no more, no less. That is, it contains no 
base image. There's a tool called Smith [2] that helps to build these 
microcontainers. You specify the files you want to have included in the 
container, then it will use the dynamic linker to figure out all the 
dependencies of the executables. With LDC it's possible to build a fully 
statically linked executable, that makes it trivial to build a 
microcontainer out of.

[1] https://blogs.oracle.com/developers/the-microcontainer-manifesto
[2] https://github.com/oracle/smith

-- 
/Jacob Carlborg


More information about the Digitalmars-d-announce mailing list