Been playing with Docker external link 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 external link droplet with the latest CentOS installed to run as a base. I then installed docker using the Docker Puppet Module external link .

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 external link 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.rpm
yum -y install docker-io vim-enhanced
vim /etc/sysconfig/docker # Replace other_args=”” with other_args=”-H tcp://127.0.0.1:4243 -H unix:///var/run/docker.sock”
service docker start
chkconfig docker on
docker 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-agent
chmod +x /usr/local/bin/shipyard-agent 
shipyard-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 external link ;

yum install python-pip
pip install “pip>=1.4,<1.5” — upgrade
pip 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 external link for another project I created the a GitHub Repo external link and then published it as a trusted build on the Docker Index external link .