Public | Automated Build

Last pushed: a month ago
Short Description
Juju goodness in a docker container!
Full Description

Juju Box

Juju Box is a docker container project that provides a configured Juju
environment with all the tools you need to work with

Juju is an open source, universal model for applications. Juju allows you to
deploy, configure, manage, maintain, and scale cloud services quickly and
efficiently on public clouds, as well as on physical servers.

This container comes with the basic tools you need to get started with Juju.

The charmbox container starts
with jujubox and adds the functionality of
charm-tools and

Install Docker


Install Docker using the package manager for your Linux distribution, or We recommend Docker version 1.6 or

Mac OS X

There are several ways to
install Docker on Mac OS X.
Consult the latest documentation on
Getting Started with Docker for Mac.

Download jujubox

If you want to see the code you can download the jujubox project from
github and build it from source.

git clone && cd jujubox
docker build -t jujusolutions/jujubox ./

Or simply pull the jujubox container from the
Docker hub.

docker pull jujusolutions/jujubox

Run jujubox

There are several different ways to run jujubox depending on what you are
trying to accomplish.

Running jujubox to use Juju

If you want to use Juju run the container in an interactive (-i) tty (-t)
session and use the command line. Since the container file system is reset each
time it is highly recommended to mount a volume (-v) from the host system to
the $JUJU_DATA directory. This will allow any Juju data to persist between
runs of jujubox:

docker run --rm -it \
  -v $JUJU_DATA:/home/ubuntu/.local/share/juju \

Use charms from the host

If you already have charms on the host machine, you can also mount the
$JUJU_REPOSITORY directory so jujubox can deploy local charms.

docker run --rm -it \
  -v $JUJU_DATA:/home/ubuntu/.local/share/juju \
  -v $JUJU_REPOSITORY:/home/ubuntu/charms \

See the Environment Variables
for more information on the paths for $JUJU_DATA and $JUJU_REPOSITORY.

jujubox and the LXD provider

At this time you can not run jujubox on the LXD provider inside of Docker
because of some nested container issues. If you want to use the LXD provider
install Juju and LXD on the host system.

More information

For more information about what you can do in jujubox check out the
Juju documenation.

If you find any bugs please create an issue in the
jujubox github repository.

Docker Pull Command
Source Repository