Skip to content
A small image based on Debian designed for use in containers
Shell Makefile
Branch: master
Clone or download
james-w Stop trying to update -extras
The -extras repos are archived, so we can't create PRs any more, so don't try.

-runtimes is still active.
Latest commit 392318a Jan 21, 2020

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
debootstrap Add Buster Jul 11, 2019
keys Add Buster Jul 11, 2019
.gitignore update Makefile Jun 1, 2017
.travis.yml Add shellcheck to catch bad shell code Oct 4, 2019
LICENSE add LICENSE (#28) May 30, 2017
Makefile update Makefile Jun 1, 2017
README.md Remove Slack channel Apr 10, 2018
buildall Split out a buildone script Sep 27, 2019
buildone Also tag latest at push time Oct 7, 2019
dockerdiff Make the image build reproducible Feb 10, 2017
import Make the image build reproducible Feb 10, 2017
mkimage Don't delete symlinks in /usr/share/doc Jan 21, 2020
pre-build.sh update Makefile Jun 1, 2017
pushall Stop trying to update -extras Jan 21, 2020
shellcheck Add shellcheck to catch bad shell code Oct 4, 2019
test Fix reproducible builds by fixing date in /etc/shadow Sep 30, 2019

README.md

minideb

Build Status

What is Minideb

A minimalist Debian-based image built specifically to be used as a base image for containers.

Use Minideb

You can use the image directly, e.g.

$ docker run --rm -it bitnami/minideb:latest

There are tags for the different Debian releases.

$ docker run --rm -it bitnami/minideb:stretch

The images are built daily and have the security release enabled, so will contain any security updates released more than 24 hours ago.

You can also use the images as a base for your own Dockerfile:

FROM bitnami/minideb:stretch

Why use Minideb

  • This image aims to strike a good balance between having small images, and having many quality packages available for easy integration.

  • The image is based on glibc for wide compatibility, and has apt for access to a large number of packages. In order to reduce size of the image, some things that aren't required in containers are removed:

    • Packages that aren't often used in containers (hardware related, init systems etc.)
    • Some files that aren't usually required (docs, man pages, locales, caches)
  • These images also include an install_packages command that you can use instead of apt. This takes care of some things for you:

    • Install the named packages, skipping prompts etc.
    • Clean up the apt metadata afterwards to keep the image small.
    • Retrying if apt fails. Sometimes a package will fail to download due to a network issue, and this may fix that, which is particularly useful in an automated build pipeline.

    For example:

    $ install_packages apache2 memcached
    

Adoption of Minideb

The minideb container image is the base image for many Bitnami-maintained language runtimes including php, nodejs, ruby and infrastructure components including mariadb, redis, nginx and mongodb.

Compatibility

The image points to the Debian archive, so you are free to install packages from there that you need. However because some Essential packages have been removed they may not always install or work correctly.

In those cases you can figure out which package is needed and manually specify to install it along with your desired packages. Please feel free to submit an issue request so that we can reach out and help you quickly.

Building Minideb

We provide a Makefile to help you build Minideb locally. It should be run on a Debian based machine and requires sudo privileges.

$ sudo make

To build an individual release (stretch, jessie or unstable)

$ sudo make stretch

To test the resulting image:

$ sudo make test-stretch

Contributing

We'd love for you to contribute to this image. You can request new features by creating an issue, or submit a pull request with your contribution.

License

Copyright (c) 2016-2017 Bitnami

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

You can’t perform that action at this time.