Public | Automated Build

Last pushed: 5 months ago
Short Description
Ubuntu 32-bit Images
Full Description

Ubuntu 32-bit Images for Docker

The Ubuntu 32-bit images for Docker are built the same way as the official Docker Ubuntu 64-bit images. They are based on the Ubuntu cloud images released by Canonical.

For available tags please see the list of tags at Docker Hub.

Usage

The images are mainly useful to derive other images from, but can be used standalone like:

$ docker pull f69m/ubuntu32:lts
$ docker run --rm -it f69m/ubuntu32:lts bash

Branches

The master branch contains only scripts and config files and has a proper Git history. The dist branch contains the big binary blobs for building the images and will always be a single commit on top of the master branch.

Contribute

You are welcome to discuss these images, report any issues or contribute changes here on Github, but please stick to topics specific to the 32-bit Docker images. More general contributions should be directed upstream.

Pull requests should only be done for scripts and config files against the master branch. Please do not create pull requests agains the dist branch.

Why 32-bit?

So why make the effort to create 32-bit images? All the nice stuff out there is built for a 64-bit architecture.

Two reasons: for one I sometimes work on an old 32-bit laptop, so running anything with Docker requires 32-bit images.

And then using 32-bit images saves a lot of memory, with negligible impact on the performance. Unless your application is one of the few that can really benefit from 64-bit instructions. So 32-bit images allow running more containers on a cheap VPS. This does save real
money!

Docker Pull Command
Owner
f69m
Source Repository

Comments (2)
f69m
6 months ago

@mondain, sorry for the late answer.

The container runs fine on 64-bit systems using 32-bit binaries, but the kernel is the 64-bit system kernel. That's why 'arch' and 'uname' show a 64-bit architecture.

dpkg --print-architecture
i386

Of course this might confuse build scripts or others that rely on those commands to figure out the current architecture. You can always fool them using 'linux32':

arch
x86_64
linux32 arch
i686

mondain
a year ago

Does this have to be run on a 32 bit system to stay in 32 bit mode?

mondain@mondain-XPS-8700:~/workspace/$ docker run --rm -it f69m/ubuntu32:lts uname -a
Unable to find image 'f69m/ubuntu32:lts' locally
lts: Pulling from f69m/ubuntu32
2777164b343f: Pull complete 
ba6274eec227: Pull complete 
dad2ff28ae38: Pull complete 
cea485af213d: Pull complete 
Digest: sha256:2a73edeaad0816f90598e06ff027f59d2597fd1c123426eacc168b8240124d5e
Status: Downloaded newer image for f69m/ubuntu32:lts
Linux 08b543a94ef9 4.4.0-28-generic #47-Ubuntu SMP Fri Jun 24 10:09:13 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux