Some Linux distributions don't have a pre-installed Docker engine. Public Vagrant boxes (e.g., those in Vagrant Cloud and Vagrantbox.es) also lack quality support for Docker. So I build these Vagrant boxes to aid my Docker development.
I also install some handy tools for Docker.
Use the following public box names (all available from Atlas service):
-
Ubuntu 14.04.x LTS ("Trusty") x64:
-
williamyeh/ubuntu-trusty64-docker
, basically ubuntu-14.04.3-server-amd64 + Docker -
williamyeh/insecure-registry
, basicallywilliamyeh/ubuntu-trusty64-docker
+ Docker Registry 2.x
-
-
Debian 8 ("Jessie") x64:
-
williamyeh/debian-jessie64-docker
, basically debian-8.2.0-amd64 + Docker -
williamyeh/k8s
, basicallywilliamyeh/debian-jessie64-docker
+ Kubernetes
-
-
CentOS 7 x64:
williamyeh/centos7-docker
, basically CentOS 7.1 + Docker
-
Docker Engine
-
Docker CLI
-
Docker Compose (was: Fig): Fast, isolated development environments using Docker.
-
Docker Swarm: a Docker-native clustering system.
-
Docker Machine: Machine management for a container-centric world.
-
docker-bench-security: a script that checks for all the automatable tests included in the CIS Docker 1.6 Benchmark.
-
dockviz: Visualizing Docker data (
docker images --tree
replacement). -
Pipework: Software-Defined Networking for Linux Containers.
-
docker-gen: Generate files from docker container meta-data.
-
dockerize: Utility to simplify running applications in docker containers.
-
cAdvisor: Analyzes resource usage and performance characteristics of running containers.
-
weave: creates a virtual network that connects Docker containers deployed across multiple hosts and enables their automatic discovery.
-
Docker host tools: Some handy tools for managing Docker images and containers (also written by me).
-
Docker Registry 2.x (only provided in
williamyeh/insecure-registry
box) -
Kubernetes (only provided in
williamyeh/k8s
box)
Here are steps you can follow to build these boxes on your own.
First, install the Packer tool on your host machine.
Second, pull the Bento submodule:
# pull the Bento project
git submodule init
# copy Bento stuff to sub-directories
# since Packer doesn't push soft links to Atlas (defects!)...
./copy-bento.sh
Third, choose the box directory of your choice:
# change working directory to any specific OS;
# for example, "ubuntu-trusty"
cd ubuntu-trusty
Now, you can either generate the Vagrant box file on your machine:
# build `ubuntu-trusty64-docker`:
packer build ubuntu-trusty64-docker.json
# build `ubuntu-trusty64-docker`, VirtualBox version only:
packer build -only=virtualbox-iso \
ubuntu-trusty64-docker.json
# build `ubuntu-trusty64-docker`, VirtualBox version only,
# with pre-downloaded ISO file from `file:///Volumes/ISO/`:
packer build -only=virtualbox-iso \
-var 'mirror=file:///Volumes/ISO/' \
ubuntu-trusty64-docker.json
you'll get an 'XXX.box' file in the builds
directory, if successful.
Or, you can delegate the building and hosting tasks to Atlas:
# make sure the following environment variables are set:
# ATLAS_TOKEN
# ATLAS_USERNAME
packer push ubuntu-trusty64-docker.json
Some nice alternatives you may try:
-
Ubuntu 14.04 LTS ("Trusty") x64:
-
CentOS 6.x x64:
-
CoreOS x64:
Licensed under MIT license.
Copyright © 2014-2015 William Yeh - https://github.com/William-Yeh.