Mark Drew talks about “Getting started fast with Docker” in this episode of ColdFusion Alive podcast with host Michaela Light. In this presentation, Mark Drew will go through the fundamentals of the Query Language, structure, use cases and how we can get started with GraphQL endpoints.
In a world where APIs and REST are the way that we can communicate with services, it can become an arduous task to get to the information you need.
For example, if you look at a single tweet, obtained from Twitter's API, you will so a stack of information that you don't need! If only there was a way to query this data to get just what you need.
Enter Facebook's GraphQL language. A language specification that solves the same problem that SQL did for Relational Databases.
Show notes
What the heck is a Docker container and why should all CFer care?
Analogy with containerized shipping of goods across the sea
The challenges they overcome
Separation of apps from how they are deployed
Need to pre-warm your server before running new code
Scripting of container building
Live and dev versions can be the same
Environment variables eg which db are we using
Able to test on load balanced cluster
Docker containers are lightweight compared to VM
Fast to start up
Able to run other types of task in micro services and micro transactions
Adobe CF vs Lucee CFML licensing on Docker
Separate lifecycle for each container
All developers in same environment
Easier port mapping running many versions of CF, db, OS etc
Safe and clean way to test out new programming languages
VMs vs Containers
Docker vs Vagrant
Are traditional ISPs going to go away?
But now you have to keep your CF etc patched
How to Get started with the Docker Engine
Install Docker
Before needed VirtualBox VM first
Now we have native versions on Linux and Windows
Kitematic to search for instances - auto download and install
Attach a volume (OS folder) to your container
Create a Docker file (it is called DockerFile!)
From command
Copy CF files
Docker Build
Commit to Docker version control such as Docker Hub private repository (or AWS repository)
Command Box
WTF is Docker compose?
Create a whole web app environment with multiple containers for CF, db etc
Virtual networks between them
Documents the environment
How Docker Swarm can make your sites more reliable
Docker clusters
Automatic restart
Automatic adding extra Docker instances
Rolling updates across your cluster
Docker Cloud and Continuous Integration
Jenkins
Slack bot messages
Why are you proud to use CFML?
It actually gets stuff done
Modern language
Forgebox
Commandbox CFML scripting
Easy to scale
WWIT for you to make CF more alive this year?
More Forgebox contributions
Code of conduct on GitHub
No more X vs Y flame wars - focus on the positive of X (or Y)
What are you looking forward to at CFObjective?
Mentioned in this episode
Docker
Amazon Docker
Heroku container provider
Google containers Kubernetes
CommandBox
Malcolm Mc Lean invented the common sized container in 1956
Reefer - refrigerated containers (and not something you might smoke!)
Lucee CFML
Jenkins
CIBot
VM = Virtual Machine
MongoDB
YAML (Docker Compose file format)
Puppet (for Vagrant)
Chef (for Vagrant)
Git
Repository for the containers
Ubuntu Linux
Alpine Linux
Tomcat
Headless Wind
Rancher
Lucee Docker
Docker Hub
Docker Swarm
Docker Cloud
A WAR file
Ruby programming language
Node.js
Ortus
Forgebox
RIAForge
99Percent invisible podcast
Localhost podcast
Listen to the Audio
Bio
Mark Drew
Mark has been programming CFML since 1996, and even though he has had forays into Perl, ASP and PHP he is still loving every line of code he has crafted with CFML. His career has concentrated on eCommerce, Content Management and Application Scalability for various well-known brands in the UK market such as Jaeger, Hackett, Hobbs, Dyson, B&W, Diesel amongst others.
Links
Twitter
LinkedIn
CFML Slack
Mark (at) CMDHQ.com
Interview transcript
Michael: Welcome back to the show. I am here with Mark Drew otherwise known as the amazing C.F.O. from London.
Mark: There's only one of us in London.
Michael: There’s only one, others 00:12 [crosstalk]
Mark: There’s hundreds of them.
Michael: Yes and he's the director of web development at C.M.D. which is a web development shop, I believe in the U.K.
Mark: In sunny Greenwich.
Michael: In Greenwich yes, he got Greenwich Mean Time exactly down. And he's also the co-host of a new podcast called ‘Local Host’. So, check that out too. I’ll put the link in the show notes to that.
So today, we're looking at how C.F.S. can get started fast with Docker and we're going to look at what a Dock container is and why everyone listening should care about that. The challenges they overcome, Docker versus Vagrant even controversially our traditional I.S.P. is going to go away if Docker gets his way.
And how they compare the virtual machines, how you can get started with a Docker engine. What the heck is Docker compose? And using Docker to make your sites even more reliable. Docker cloud and how you can get started with Docker.
So, welcome Mark.
Mark: Well, thank you Michel for having me on board. This is very exciting all across the internets.
Read more
And to continue learning how to make your ColdFusion apps more modern and alive, I encourage you to download our free ColdFusion Alive Best Practices Checklist.Because… perhaps you are responsible for a mission-critical or revenue-generating CF application that you don’t trust 100%, where implementing new features is a painful ad-hoc process with slow turnaround even for simple requests.What if you have no contingency plan for a sudden developer departure or a server outage? Perhaps every time a new freelancer works on your site, something breaks. Or your application availability, security, and reliability are poor.And if you are depending on ColdFusion for your job, then you can’t afford to let your CF development methods die on the vine.You’re making a high-stakes bet that everything is going to be OK using the same old app creation ways in that one language — forever.All it would take is for your fellow CF developer to quit or for your CIO to decide to leave the (falsely) perceived sinking ship of CFML and you could lose everything—your project, your hard-won CF skills, and possibly even your job.Luckily, there are a number of simple, logical steps you can take now to protect yourself from these obvious risks.No Brainer ColdFusion Best Practices to Ensure You Thrive No Matter What Happens NextColdFusion Alive Best Practices ChecklistModern ColdFusion development best practices that reduce stress, inefficiency, project lifecycle costs while simultaneously increasing project velocity and innovation.√ Easily create a consistent server architecture across development, testing, and production√ A modern test environment to prevent bugs from spreading√ Automated continuous integration tools that work well with CF√ A portable development environment baked into your codebase… for free! Learn about these and many more strategies in our free ColdFusion Alive Best Practices Checklist.