Ever read a blog post or story on a Docker project, and wanted to try it immediately without setting up a Docker environment? Does spinning up a VM and installing Docker take too much time to just play around? Maybe your Mac or Windows laptop is running low on resource and you don’t want to close what your working on to start the Docker runtime. Whatever the reason – Time, Resources, Motivation – I’m going to introduce you to my new favorite Docker tool that will eliminate your impediments to learning or experimenting with Docker.
Say Hello to Play-With-Docker http://play-with-docker.com
Play with Docker is a website that allows you up to 5 Docker instances for 4 hours. It’s fully loaded with the current Docker Engine Community Edition, Docker Swarm, and Docker-Compose. Tools like git & pip have been installed as well, allowing users to pull in code from the Internet to experiment with.
Important: Remember this is a playground for Docker. It is not encrypted thus production code and passwords should NOT be used on this site.
Now let’s get started. Navigate to http://play-with-docker.com with your favorite browser. I’ve tested Chrome, Opera, Firefox and Safari. Everything seems to work!
You’ll need to click the reCAPTCHA to get started.
Your now greeted with a countdown clock. Again this is a playground to let you test Docker and related projects with no setup. At current you’re given 4 hours to work.
Click “+ Add New Instance” to start your first instance. Up to 5 can be created for working with Docker Swarms. Each Instance can use up to 4GB of Memory and 10GB of Storage. Thus far the CPU and Internet access speeds have been outstanding in my experiments.
Let’s start simple with the classic “Hello World” application. Run the following command at the prompt.
docker run hello-world
Now this is a simple example. As a fully functional Docker environment, feel free to create a Swarm, Service or Compose whatever you like.
But, how about one more example.
Since Storage Made Easy is all about Object Storage, let’s deploy an Nginx server to host a Swift Durability Calculator.
Swift Durability Calculator
Create a new instance on Play with Docker. Now paste the following 2 commands.
git clone https://github.com/notmyname/swift-durability-calculator.git docker run --name docker-nginx -p 80:80 -d -v /root/swift-durability-calculator/:/usr/share/nginx/html nginx
What did these 2 commands do?
- The first command downloaded the code for the website from the Git repository
- The second command pulled the Docker image of Nginx and ran it with options:
- -p 80:80 -> Map the containers port 80 to the hosts port 80
- -v /root/swift-durability-calculator/:/usr/share ->Map the code pulled from Git to the /usr/share directory in our container
Feel free to play with this calculator. It can compute the resiliency of On-premises Object Storage platforms, such as Swift and Ceph, to data loss depending on the replica count or the erasure coding scheme.
Tip of the Iceberg
We’ve barely scratched the surface of what can be done with Docker. Storage Made Easy has a number of articles on deploying Object Storage with Docker containers. Now you can skip straight to the Docker part and skip the VM, Vagrant, or other setup pieces.