Blog

Luis Majano

May 23, 2017

Spread the word


Share your thoughts

We are very excited that the Portainer.io crew has added support for CommandBox and CommandBox docker image deployment. If you have not heard of Portainer, then let's start there first.

What is Portainer


Portainer is an open-source lightweight management UI for easily managing your docker host or a swarm cluster. It is available as a docker image or a standalone binary for any operating system. I was quite impressed with all the functionality out of the box with portainer, and the ease of use of the interface. It really made, for me, put all the questions I had about docker to rest thanks to finally visualizing them. I also found useful their live demo, which is great as well and got my appettite ready for delving into it.

Starting Portainer

To do a quick start for portainer just use the following commands:

docker run -d -p 9000:9000  \
   -v /var/run/docker.sock:/var/run/docker.sock portainer/portainer

This will run the docker container for portainer on port 9000 and it will manage the local Docker engine.

Please note that you can manage any docker endpoint or swarm cluster. Pelase refer to their documentation for further instructions: https://portainer.readthedocs.io/en/stable/deployment.html#quick-start

Application Templates

Portainer has the concept of quick application templates for easily deploying applications and trying them out. From here you can navigate their great collection and you will find our two docker images: CommandBox and ContentBox. We will use them to launch CFML applications with CommandBox or a full fledge CMS instance using ContentBox CMS. Below are the screenshots for each template so you can get started with ColdFusion (CFML) and ContentBox CMS with docker:

CommandBox Template

Using the CommandBox template you can fill out the following information:

  • The name of the container
  • The type of networking
  • Ownership in Portainer (Portainer supports multi-user access and runnable rights)
  • Port Mappings for HTTP and HTTPS
  • Volume Mapping for the running ColdFusion application

You can run the template as is and it will generate the sample ColdFusion page which is not very fancy. So we would encourage you to point it to a ColdFusion application so you can see your application being dockerized!

Please note that once the image spins up you can add more environment variables and further configuration settings by visiting the containers area.

ContentBox CMS Template

Using the ContentBox CMS template you can fill out the following information:

  • The name of the container
  • The type of networking
  • Ownership in Portainer (Portainer supports multi-user access and runnable rights)
  • Port Mappings for HTTP and HTTPS
  • Volume Mappings for the following:
    • The storage of the in-memory database (Express edition is the default in portainer)
    • The media location for assets

You can run the template as is and it will generate a new ContentBox CMS site with its very own in-memory H2 database and clustering capabilities. However, you will need to follow the installer and then remove it via environment variables so it does not recreate the image on each startup. Please refer to our docker image documentation for further information.

Please note that once the image spins up you can add more environment variables and further configuration settings by visiting the containers area.

What's Next!

In coming tutorials we will be demonstrating how to use Portainer to leverage a docker swarm with our images. From service creations, to on-the-fly modifications and much more. So stay tuned!

Add Your Comment

Recent Entries

ContentBox v6.1 Released

ContentBox v6.1 Released

In this release, we're thrilled to unveil a series of significant enhancements and upgrades to ContentBox designed to elevate your experience and considerably improve system performance. Our team has focused on integrating the latest CommandBox migrations and ColdBox Core, which ensures that the core system continues to operate with maximum efficiency and stability. This upgrade is part of our ongoing commitment to maintaining a cutting-edge platform that meets the evolving needs of our users.

Luis Majano
Luis Majano
March 19, 2025
Introducing BoxLang Gen AI: A Unified API for Large Language Models

Introducing BoxLang Gen AI: A Unified API for Large Language Models

We are thrilled to introduce BoxLang Gen AI, a powerful and intuitive module that brings seamless AI generation capabilities to your BoxLang applications. With a fluent, functional API, this module allows developers to interact with multiple AI providers in a consistent and abstracted manner.

Luis Majano
Luis Majano
March 18, 2025