Prebuilt Service Images

Tugboat maintains several Docker images. These images are extensions of official Docker images and include tools and configurations that help them work well with Tugboat. All of these images are available on Docker Hub. The source code used to generate these images is available on GitHub.

It is best practice to use the most specific tag available for a given image to prevent any unforeseen upstream changes from affecting your previews. For example, instead of tugboatqa/mysql:5, it is generally better to use tugboatqa/mysql:5.6.

That said, sometimes the version of a service doesn't really matter much. For example, it may not matter which version of memcached you use, and you can be sure you always have the most recent version available by specifying tugboatqa/memcached or tugboatqa/memcached:latest

Image Usage
Alpine image: tugboatqa/alpine:[TAG] Tags
Apache image: tugboatqa/httpd:[TAG] Tags
CentOS image: tugboatqa/centos:[TAG] Tags
CouchDB image: tugboatqa/couchdb:[TAG] Tags
Debian image: tugboatqa/debian:[TAG] Tags
Elastic Search image: tugboatqa/elasticsearch:[TAG] Tags
MariaDB image: tugboatqa/mariadb:[TAG] Tags
Memcached image: tugboatqa/memcached:[TAG] Tags
MongoDB image: tugboatqa/mongo:[TAG] Tags
MySQL image: tugboatqa/mysql:[TAG] Tags
Nginx image: tugboatqa/nginx:[TAG] Tags
Node image: tugboatqa/node:[TAG] Tags
Percona image: tugboatqa/percona:[TAG] Tags
PHP image: tugboatqa/php:[TAG] Tags
Redis image: tugboatqa/redis:[TAG] Tags
Solr image: tugboatqa/solr:[TAG] Tags
Ubuntu image: tugboatqa/ubuntu:[TAG] Tags
Varnish image: tugboatqa/varnish:[TAG] Tags

Additional Information


The Alpine image is extremely minimal by nature. Unlike the other images, it does not have any extra tools installed except those required to use git with SSH.

The 2.x tags of this image extend the official Elast Search image on Docker Hub. These images are based on Debian.

The newer tags of this image extend the official Elastic Search images maintained by These images are based on CentOS.


The MySQL, MariaDB, and Percona images are configured the same way. Each have a default database named tugboat as well as a user named tugboat with a password of tugboat. The tugboat user has full access to the tugboat database. In addition, the root database user does not have a password, but can only be used to connect to the database from the MariaDB or MySQL service.

This means that in order to do any root-level database operations, they must be done by the commands defined for the MySQL or MariaDB service.

    image: tugboatqa/mysql
        - mysql -e "CREATE DATABASE foo;"


PHP Extensions

The PHP images provided upstream do not use apt-get to install PHP extensions. Instead, there are helper scripts that let you install additional extensions as required. The images provided by Tugboat attempt to balance installing the most commonly used extensions with reserving as much disk space as possible. If an extension that you need is not installed, use docker-php-ext-configure, docker-php-ext-install, and docker-php-ext-enable in your service commands.

    # Install and enable the redis extension
    - pecl install redis
    - docker-php-ext-enable redis

More information about these helper scripts can be found in the upstream documentation.

Apache Modules

In order to keep the service containers as lean as possible, only the most basic apache modules are enabled in the PHP/Apache images. To enable a missing module, add it with a service command

    # Enable mod_rewrite and mod_headers
    - a2enmod rewrite headers

results matching ""

    No results matching ""