Running Official Docker Images on the Apcera Platform
Apcera tests approximately 100 official Docker images which account for a large majority of the pulls at the public Docker Hub. The table below lists the Docker images we test and APC commands to run them on the Apcera Platform.
Some popular Docker images are not tested by Apcera because they either do not make sense to run on our platform (such as other container engines, load balancers, etc.) or are officially deprecated (such as java in favor of openjdk).
Deploying Docker in Apcera
You can deploy a Docker image as a job in Apcera using APC, the web console, a multi-resource manifest file, and the Docker API. See the following tutorials:
Image list
The following table lists the public Docker images we test on the Apcera Platform and their APC command equivalents.
Port flags (-p
) are the ports exposed in the Dockerfile for that image. We may need to open other ports for the container to work.
Required additional RAM, start command(s), and environment variables are also listed. Note that --env-set
values must be quoted. We use double quotes so the commands will run on Windows and Unix.
Docker images built with VOLUME should use a persistent storage on Apcera (using the --provider
flag). To simplify testing, for images that require a persisten volume we use the --ignore-volumes
flag. In this case data in the container is not be persisted if the container is restarted. You should set up a persistence layer in your cluster and include the --provider
when you run any such command.
Some containers that we test, such as an operating systems and programming languages, simply run a command and exit. When the container is done running the application state is finished
. To use one of images correctly, typically you will build a custom container based on that image and push it to a Docker Hub registry. You can then deploy the image on Apcera.
apc docker run alpine --image=alpine:latest --memory=1024MB --start-cmd="cat /etc/os-release"
apc docker run backdrop --image=backdrop:latest -p=80 --memory=1024MB --env-set "BACKDROP_DB_HOST=127.0.0.1" --env-set "BACKDROP_DB_PASSWORD=my-secret-pw"
apc docker run bonita --image=bonita:latest -p=8080 --memory=2048MB --ignore-volumes
apc docker run busybox --image=busybox:latest --memory=1024MB --start-cmd="uname"
apc docker run cassandra --image=cassandra:latest -p=7000 -p=7001 -p=7199 -p=9042 -p=9160 --memory=8072MB --ignore-volumes
apc docker run centos --image=centos:latest --memory=1024MB --start-cmd="cat /etc/os-release"
apc docker run chronograf --image=chronograf:latest -p=10000 --memory=1024MB --ignore-volumes
apc docker run cirros --image=cirros:latest --memory=1024MB --start-cmd="cat /etc/os-release"
apc docker run clearlinux --image=clearlinux:latest --memory=1024MB --start-cmd="cat /usr/lib/os-release"
apc docker run clojure --image=clojure:latest --memory=1024MB --start-cmd="lein version"
apc docker run consul --image=consul:latest -p=8500 --memory=1024MB --ignore-volumes
apc docker run couchbase --image=couchbase:latest -p=8091 --memory=1024MB --ignore-volumes
apc docker run couchdb --image=couchdb:latest -p=5984 --memory=1024MB --ignore-volumes
apc docker run crate --image=crate:latest -p=4200 -p=4300 --memory=1024MB --ignore-volumes
apc docker run crux --image=crux:latest --memory=1024MB --start-cmd="uname"
apc docker run debian --image=debian:latest --memory=1024MB --start-cmd="cat /etc/os-release"
apc docker run django --image=django:latest
apc docker run drupal --image=drupal:latest -p=80 --memory=1024MB --routes http://drupal.example.apcera-platform.io
apc docker run elasticsearch --image=elasticsearch:latest -p=9200 -p=9300 --memory=3072MB --ignore-volumes
apc docker run elixir --image=elixir:latest --memory=1024MB
apc docker run erlang --image=erlang:latest --start-cmd="erl -version" --memory=1024MB
apc docker run fedora --image=fedora:latest --start-cmd="cat /etc/os-release" --memory=1024MB
apc docker run fsharp --image=fsharp:latest --start-cmd="fsharpi --help" --memory=1024MB
apc docker run gcc --image=gcc:latest --memory=1024MB
apc docker run ghost --image=ghost:latest -p=2368 --memory=1024MB --ignore-volumes
apc docker run compat-glassfish --image=glassfish:latest -p=4848 -p=8080 -p=8181 --memory=1024MB
apc docker run golang --image=golang:latest --memory=1024MB --start-cmd="/bin/sh -c 'go version'"
apc docker run haskell --image=haskell:latest --memory=1024MB --start-cmd="/bin/sh -c 'ghci --version'"
apc docker run hello-seattle --image=hello-seattle:latest --memory=1024MB
apc docker run hello-world --image=hello-world:latest --memory=1024MB
apc docker run hola-mundo --image=hola-mundo:latest --memory=1024MB
apc docker run httpd --image=httpd:latest -p=80 --memory=1024MB
apc docker run hylang --image=hylang:latest --memory=1024MB
apc docker run ibmjava --image=ibmjava:latest --memory=1024MB --start-cmd="/bin/sh -c 'java -version'"
apc docker run influxdb --image=influxdb:latest -p=8083 -p=8086 --memory=1024MB --ignore-volumes
apc docker run iojs --image=iojs:latest --memory=1024MB --start-cmd="node -e \"console.log('helloworld')\""
apc docker run irssi --image=irssi:latest --memory=1024MB --env-set "TERM=xterm-color" --ignore-volumes
apc docker run jenkins --image=jenkins:latest -p=8080 -p=50000 --memory=1024MB --ignore-volumes
apc docker run jetty --image=jetty:latest --memory=1024MB -p=8080
apc docker run jruby --image=jruby:latest --memory=1024MB --start-cmd="ruby -e 'puts \"hello\"'"
apc docker run julia --image=julia:latest --memory=1024MB --start-cmd="/usr/local/julia/bin/julia -e 'println(\"hello world\")'"
apc docker run kaazing-gateway --image=kaazing-gateway:latest -p=8000 --memory=1024MB
apc docker run kibana --image=kibana:latest -p=5601 --memory=1024MB
apc docker run lightstreamer --image=lightstreamer:latest -p=8080 --memory=1024MB
apc docker run mageia --image=mageia:latest --memory=1024MB --start-cmd="cat /etc/os-release"
apc docker run mariadb --image=mariadb:latest -p=3306 --memory=1024MB --env-set "MYSQL_ROOT_PASSWORD=my-secret-pw" --ignore-volumes
apc docker run maven --image=maven:latest --memory=1024MB --start-cmd="mvn --version" --ignore-volumes
apc docker run memcached --image=memcached:latest --memory=1024MB -p=11211 --start-cmd="memcached -vv" --ignore-volumes
apc docker run mono --image=mono:latest --start-cmd="mono --version" --memory=1024MB
apc docker run mysql --image=mysql:latest --memory=1024MB -p=3306 --ignore-volumes --env-set "MYSQL_ROOT_PASSWORD=my-secret-pw"
apc docker run nats --image=nats:latest --memory=1024MB -p=4222 -p=6222 -p=8222
apc docker run neo4j --image=neo4j:latest --memory=1024MB -p=7473 -p=7474 -p=7687 --ignore-volumes
apc docker run neurodebian --image=neurodebian:latest --memory=1024MB --start-cmd="cat /etc/os-release"
apc docker run nginx --image=nginx:latest -p=80 -p=443 --memory=1024MB --start-cmd "nginx -g 'error_log /dev/stdout info; daemon off;'"
apc docker run node --image=node:latest --memory=1024MB --start-cmd="node -e \"console.log('helloworld')\""
apc docker run nuxeo --image=nuxeo:latest --memory=1024MB -p=8080 --ignore-volumes
apc docker run odoo --image=odoo:latest --memory=1024MB -p=8069 -p=8071 --ignore-volumes
apc docker run openjdk --image=openjdk:latest --memory=1024MB --start-cmd="javac -version"
apc docker run opensuse --image=opensuse:latest --start-cmd="cat /etc/os-release" --memory=1024MB
apc docker run oraclelinux --image=oraclelinux:latest --memory=1024MB --start-cmd="cat /etc/os-release"
apc docker run orientdb --image=orientdb:latest -p=2424 -p=2480 --memory=2048MB --env-set "ORIENTDB_ROOT_PASSWORD=my-secret-pw" --ignore-volumes
apc docker run owncloud --image=owncloud:latest -p=80 --memory=1024MB --ignore-volumes
apc docker run percona --image=percona:latest -p=3306 --memory=1024MB --env-set "MYSQL_ROOT_PASSWORD=my-secret-pw" --ignore-volumes
apc docker run perl --image=perl:latest --memory=1024MB --start-cmd="perl -e 'print \"hello world\n\"'"
apc docker run photon --image=photon:latest --start-cmd="cat /etc/os-release" --memory=1024MB
apc docker run piwik --image=piwik:latest --memory=2048MB -p=9000 --ignore-volumes
apc docker run php --image=php:latest --memory=1024MB --start-cmd="php -v"
apc docker run php-zendserver --image=php-zendserver:latest --memory=1024MB -p=80 -p=443 -p=10081 -p=10082
apc docker run postgres --image=postgres:latest --memory=1024MB -p=5432 --env-set "POSTGRES_PASSWORD=my-secret-pw" --ignore-volumes
apc docker run pypy --image=pypy:latest --memory=1024MB --start-cmd="pypy3 --version"
apc docker run python --image=python:latest --memory=1024MB --start-cmd="python3 -c 'print(\"hello world\")'"
apc docker run r-base --image=r-base:latest --memory=1024MB --start-cmd="R --version"
apc docker run rabbitmq --image=rabbitmq:latest -p=4369 -p=5671 -p=5672 -p=25672 --memory=1024MB --ignore-volumes
apc docker run rakudo-star --image=rakudo-star:latest --memory=1024MB --start-cmd="perl -e "'print \"hello world\n\"'""
apc docker run redis --image=redis:latest -p=6379 --memory=1024MB --ignore-volumes
apc docker run redmine --image=redmine:latest --allow-egress --memory=1024MB -p=3000 --ignore-volumes
apc docker run registry --image=registry:latest -p=5000 --memory=1024MB --ignore-volumes
apc docker run ros --image=ros:latest --memory=1024MB --start-cmd="cat /etc/os-release"
apc docker run ruby --image=ruby:latest --memory=1024MB --start-cmd="ruby -e 'puts \"hello world\"'"
apc docker run solr --image=solr:latest -p=8983 --memory=1024MB
apc docker run sonarqube --image=sonarqube:latest -p=9000 --memory=1024MB --ignore-volumes
apc docker run sourcemage --image=sourcemage:latest --memory=1024MB --start-cmd="cat /etc/sourcemage-release"
apc docker run thrift --image=thrift:latest --memory=1024MB --start-cmd="thrift --version"
apc docker run tomcat --image=tomcat:latest -p=8080 --memory=1024MB
apc docker run tomee --image=tomee:latest -p=8080 --memory=1024MB
apc docker run ubuntu --image=ubuntu:latest --memory=1024MB --start-cmd="cat /etc/os-release"
apc docker run vault --image=vault:latest -p=8200 --memory=1024MB --ignore-volumes
apc docker run websphere-liberty --image=websphere-liberty:latest -p=80 -p=443 --memory=1024MB
Images with dependency requirements
The following popular Docker images are tested by Apcera, but have a dependendency requirement that you will need to satisfy in your environment. For example, Wordpress requires a MySQL database. We provide the base APC commands for reference.
apc docker run aerospike --image=aerospike:latest -p=3000 -p=3001 -p=3002 -p=3003 --memory=1024MB --ignore-volumes
apc docker run arangodb --image=arangodb:latest -p=8529 --memory=1024MB --env-set "ARANGO_NO_AUTH=1" --ignore-volumes
apc docker run celery --image=celery:latest --memory=1024MB
apc docker run gazebo --image=gazebo:gzserver7 -p=11345
apc docker run joomla --image=joomla:latest -p=8080 --memory=1024MB --env-set="JOOMLA_DB_HOST=my-db-host" --env-set="JOOMLA_DB_USER=my-db-user" --env-set="JOOMLA_DB_PASSWORD=my-db-pwrd" --ignore-volumes
apc docker run kapacitor --image=kapacitor:latest -p=9092 --memory=1024MB --ignore-volumes
apc docker run kong --image=kong:latest -p=8000 -p=8443 -p=8001 -p=7946 --memory=1024MB
apc docker run logstash --image=logstash:latest -p=9600 --memory=1024MB --start-cmd="/usr/share/logstash/bin/logstash" -e "'input { stdin { } } output { stdout { } }'"
apc docker run mongo-express --image=mongo-express:latest --memory=1024MB -p=8081
apc docker run rocket.chat --image=rocket.chat:latest -p=3000 --memory=1024MB --ignore-volumes
apc docker run sentry --image=sentry:latest -p=9000 --memory=1024MB --ignore-volumes
apc docker run telegraf --image=telegraf:latest -p=8092 -p=8094 -p=8125 --memory=1024MB
apc docker run wordpress --image=wordpress:latest --memory=1024MB --env-set "WORDPRESS_DB_PASSWORD=my-secret-pw" --ignore-volumes
Known issues
There is a known issue running the latest version of the following Docker images on Apcera Plaform 2.6.0. We provide the expected command for reference, and will update it when the known issue is resolved.
apc docker run eggdrop --image=eggdrop:latest -p=3333 --memory=1024MB -e NICK=FooBot -e SERVER=irc.freenode.net --ignore-volumes
apc docker run mongo --image=mongo:latest -p=27017 --memory=1024MB --ignore-volumes
apc docker run rethinkdb --image=rethinkdb:latest -p=28015 -p=29015 -p=8080 --memory=1024MB --ignore-volumes