Differences between revisions 1 and 11 (spanning 10 versions)
Revision 1 as of 2014-03-05 17:05:17
Size: 552
Comment:
Revision 11 as of 2014-07-28 14:24:19
Size: 2523
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
Hints on how to create a Debian image for [[Docker]]. This page attempts to document how to create a Debian image for [[Docker]].
Line 3: Line 3:
See http://sfxpt.wordpress.com/2013/11/17/debianubuntu-package-developing-with-docker-continued/ for original reference. You may use Debian images from [[https://index.docker.io/_/debian/|Docker.io's Debian official repository]] if you trust their author, or you may prefer to create them yourself, using the methods described below.
Line 5: Line 5:
The following is work in progress WITHOUT ANY WARANTY '''The following is work in progress WITHOUT ANY WARANTY'''
Line 7: Line 7:
Note that due to bug #740855 `/usr/share/docker.io/contrib/mkimage-debootstrap.sh` needs to be patched at the moment. == Using (upstream provided "contrib" script) mkimage.sh ==
Line 9: Line 9:
You may create an image with : The `docker.io` package ships the `/usr/share/docker.io/contrib/mkimage.sh` script which may be used, alongside the companion script `/usr/share/docker.io/contrib/mkimage/debootstrap` to create a Docker image for Debian (or Ubuntu) using `debootstrap`, and with or without further tweaks.

You may create an image for the `stable` suite (using the `minbase` debootstrap variant) with :
Line 11: Line 13:
.../mkimage-debootstrap.sh $USER/debian sid sudo .../mkimage.sh -t $USER/minbase debootstrap --variant=minbase stable
Line 16: Line 18:
sudo docker.io run -i $USER/debian:sid echo "hello world" sudo docker.io run -i $USER/minbase echo "hello world"
Line 18: Line 20:


== Using mkimage-debootstrap.sh (now flagged as deprecated by upstream) ==

The `docker.io` package ships the `/usr/share/docker.io/contrib/mkimage-debootstrap.sh` script which may be used to create a Docker image for Debian (or Ubuntu) using `debootstrap`, and with or without further tweaks.

You may create an image for the `stable` suite (using the `minbase` debootstrap variant) with :
{{{
.../mkimage-debootstrap.sh $USER/minbase stable
}}}

The image may then be used with :
{{{
sudo docker.io run -i $USER/minbase:stable echo "hello world"
}}}

As an alternative to upstream's choices, you may modify the script so that it does not use the minbase variant by default. See for instance [[https://raw.github.com/olberger/docker/debian/contrib/mkimage-debootstrap.sh|obergix's version]] and adjust to your needs.

== Manual method ==

See also http://www.debian-administration.org/article/696/A_brief_introduction_to_using_docker#a2 if you want to use a manual debootstrap install (without the upstream's contrib script's tweaks).

== Using the newly built image to create a test container ==

A dockerfile may then refer to your image using the following directive :
{{{
FROM YOURUSER/minbase:stable
}}}

You may test it with :
{{{
echo "FROM $USER/minbase:stable" | docker.io build -t $USER/test:stable -
}}}

== References ==
 * See http://sfxpt.wordpress.com/2013/11/17/debianubuntu-package-developing-with-docker-continued/ for a description of using `mkimage-debootstrap.sh`.

This page attempts to document how to create a Debian image for Docker.

You may use Debian images from Docker.io's Debian official repository if you trust their author, or you may prefer to create them yourself, using the methods described below.

The following is work in progress WITHOUT ANY WARANTY

Using (upstream provided "contrib" script) mkimage.sh

The docker.io package ships the /usr/share/docker.io/contrib/mkimage.sh script which may be used, alongside the companion script /usr/share/docker.io/contrib/mkimage/debootstrap to create a Docker image for Debian (or Ubuntu) using debootstrap, and with or without further tweaks.

You may create an image for the stable suite (using the minbase debootstrap variant) with :

sudo .../mkimage.sh -t $USER/minbase debootstrap --variant=minbase stable

The image may then be used with :

sudo docker.io run -i $USER/minbase echo "hello world"

Using mkimage-debootstrap.sh (now flagged as deprecated by upstream)

The docker.io package ships the /usr/share/docker.io/contrib/mkimage-debootstrap.sh script which may be used to create a Docker image for Debian (or Ubuntu) using debootstrap, and with or without further tweaks.

You may create an image for the stable suite (using the minbase debootstrap variant) with :

.../mkimage-debootstrap.sh $USER/minbase stable

The image may then be used with :

sudo docker.io run -i $USER/minbase:stable echo "hello world"

As an alternative to upstream's choices, you may modify the script so that it does not use the minbase variant by default. See for instance obergix's version and adjust to your needs.

Manual method

See also http://www.debian-administration.org/article/696/A_brief_introduction_to_using_docker#a2 if you want to use a manual debootstrap install (without the upstream's contrib script's tweaks).

Using the newly built image to create a test container

A dockerfile may then refer to your image using the following directive :

FROM YOURUSER/minbase:stable

You may test it with :

echo "FROM $USER/minbase:stable" | docker.io build -t $USER/test:stable -

References