Nodebb Docker Alpine Images

NodeBB Development
  • I noticed that the official images for nodebb are built on the default node images which are built on debian. This produces rather large images. For example the v1.12.1 build is 1.39gb. I built the 1.12.x branch off of the alpine image and it is 569mb in size.

    Is there a reason that we aren't using alpine by default for the official images? Would it be possible to publish both debian based and alpine based official images? It seems like it would be easy to just keep a parallel Dockerfile for alpine and build and distribute both images.

  • Alpine is great, but pretty niche. I would think that Ubuntu, Fedora (my pick), and CentOS would all make sense before Alpine if we are going to get multiple images.

  • Hello @scottalanmiller,

    The principle in a docker container is to not care about the inners of it, since you are not directly connected to it (besides setting up the app).
    The goal of @damian, I think, is not to test if nodebb runs well on a platform but rather to have a small image to run tests against nodebb and maybe some added plugins, etc. To this, the smaller the container the better, and alpine is good at that.
    And even for production purposes, if you want to setup a farm of forums, the smaller the image the better.

    I hope this sheds a new light on our request.


  • @mat-m is spot on, though my perspective is definitely production, not test. Running the leanest container possible has the added benefit of reducing the attack vectors as there is simply less surface for somebody to target. Alpine is specifically designed to be as lightweight as possible and as stripped down as possible.

    Do we know who owns the image build process and can s/he weigh in on this?

Suggested Topics