Deploying a Stable Docker Setup on CentOS with Shipyard
Been playing with Docker again this weekend, this time rather than just doing for the sake of doing it I went for something a little more stable.
I started off by creating a new DigitalOcean droplet with the latest CentOS installed to run as a base. I then installed docker using the Docker Puppet Module.
So now I had Docker installed now what? I looked at some PaaS services, a bulk of them require Ubuntu (which I simply don’t do on servers), however Shipyard looked good. It was simple to install;
yum install http://www.mirrorservice.org/sites/dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpmyum -y install docker-io vim-enhancedvim /etc/sysconfig/docker # Replace other_args=”” with other_args=”-H tcp://127.0.0.1:4243 -H unix:///var/run/docker.sock”service docker startchkconfig docker ondocker run -i -t -v /var/run/docker.sock:/docker.sock shipyard/deploy setup
Once installed I added the agent using;
curl https://github.com/shipyard/shipyard-agent/releases/download/v0.3.1/shipyard-agent -L -o /usr/local/bin/shipyard-agentchmod +x /usr/local/bin/shipyard-agentshipyard-agent -url http://<shipyard-host>:8000 -register
Once the agent has been registered you should have a key, make a note of this because you need to ensure that the agent is always running, to do this I used supervisord;
yum install python-pippip install “pip>=1.4,<1.5” — upgradepip install supervisor
cat >> /etc/supervisord.conf << SUPERDUPER[supervisord]
[rpcinterface:supervisor]supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface
[inet_http_server]port = 127.0.0.1:9001
[supervisorctl]serverurl=http://127.0.0.1:9001
[program:shipyard]command = shipyard-agent -url http://<shipyard-host>:8000 -key <shipyard-key>SUPERDUPER
supervisord -c /etc/supervisord.conf
As I needed to checkout PHP 5.5 & MySQL 5.6 on CentOS using The IUS Community Project for another project I created the a GitHub Repo and then published it as a trusted build on the Docker Index.
Related Posts

Shopping for Containers
Explore the Docker Store, your one-stop marketplace for Docker-related content. From Docker EE to plugins and containers, find both free and paid offerings.

Trying out Elastic Beats
Explore Elastic Beats for data shipping in DevOps. Learn to set up and configure Metricbeat on Docker Swarm for system and Docker metrics analysis.

Portainer, a UI for Docker
Discover Portainer: Simplify Docker management (150k+ pulls). Open-source tool streamlines container deployment, management & monitoring for devs & DevOps.