• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar

TeraTech

The ColdFusion Experts: Develop | Secure | Optimize

  • Services
    • Consulting
    • Crash
    • Development
    • Maintenance
    • Modernization
    • Security
  • About Us
  • Testimonials
  • Free Assessment
  • Get in touch!

  • Services
    • Consulting
    • Crash
    • Development
    • Maintenance
    • Modernization
    • Security
  • About Us
  • Testimonials
  • Free Assessment
  • Get in touch!

075 Planning for CFML ISP disaster (Commandbox and Docker to the rescue) with Mark Drew

May 14, 2018 By Michaela Light 2 Comments

Mark Drew talks about “Planning for CFML ISP disaster (Commandbox and Docker to the rescue)” in this episode of ColdFusion Alive podcast with host Michaela Light.

“Challenge, a current client was planning for Disaster Recovery environments but disaster nearly struck due to the requirement of the ISP to move the servers!”

Contents

  • Show notes
  • Background:
    • Build Workflow
    • 2. Docker Server Monitor
    • 3. Artefact Caching
    • 4. Logging
    • 5. Configs Live/Dev/Test
    • 6. Central Session Storage
    • 7. Load Balancing and Orchestration
    • 8. Data Changes / Workflow
    • 9. Dependency Trees of Docker
    • 10. Hard Stuff
  • Why are you proud to use CFML?
  • WWIT for you to make CFML more alive this year?
  • What are you looking forward to at ITB?
  • His podcast Localhost.fm
  • Mentioned in this episode
  • Listen to the Audio
  • Bio
  • Interview transcript
    • Read more

Show notes

  • Funtimes in deploying real projects
  • “Your mission, Mark, should you decide to accept it, is… As usual, should you or any member of your I.M. Force be captured or killed, the secretary will disavow any knowledge of your existence. This tape will self-destruct in five seconds. Good luck, Mark.”

Background:

  • Real client that is moving from big hosted tin to a more elastic solution
  • Temporal variations in requirements. ASide from busy seasons we have Weekends!
  • All the environments were different too. So we needed a way to have *SOME* standardization
  • Vagrant vs Single instances vs Clusters, Railo vs Lucee
    • 5 instances  per machine
    • 5 machines
    • Dedicated across clients
    • Range of different machines such as windows , linux, PHP, Java and even InDesign running batch scripts.
  • Started out as a disaster recovery project but as ISP needed to move the client out it has turned into a full cloud implementation
  • Several Terabytes of image files for example
  1. Build Workflow

  • Providers
    • Gitlab
      • Can script deployment pipelines
    • Jenkins
      • Issue can not script your deployment process
    • Bitbucket
  • Stages
    • CommandBox Pre-Commit Hooks
      • Testbox
      • Cflint
    • Docker image creation successful
    • CommandBox Post commit builds
    • External testing
    • Load testing
      • JMeter
  • Submitting to your docker repository
    • Different docker images?
      • Test vs Normal

2. Docker Server Monitor

      • Fusion Reactor and FusionReactor Cloud by Integral

3. Artefact Caching

      • Build times

4. Logging

      • Getting the right data
      • ELK (The Open Source Elastic Stack)
        • ElasticSearch
        • Logstash
        • Kibana
      • JournalD

5. Configs Live/Dev/Test

6. Central Session Storage

      • CFConfig (CommandBox feature)
        • Servers Environment Variables (Production etc)
        • Generic names eg database for db server
        • Resource domain names
          • Create Aliases for them
          • Handle them with hosts files
      • memcached/redis to store sessions

7. Load Balancing and Orchestration

      • Round Robin load balancing
      • Portainer
      • Kubernetes
      • Docker Compose and Swarm
      • Elastic Container Service AWS

8. Data Changes / Workflow

      • Some solutions:
        • CFMigrations – Eric Peterson
          • Versioning of database
        • QueryBuilder (Fluent Query Builder for CFML)  – Eric Peterson
        • Currently using hand crafted SQL files (can be run multiple times)
          • First time alters the columns
          • Second time updates data

9. Dependency Trees of Docker

      • CommandBox handles this

10. Hard Stuff

      • Only one copy of each Scheduled Tasks runs
      • Canary Deployments
      • Green Blue Deployments
      • Service Url for health of the app.

Why are you proud to use CFML?

WWIT for you to make CFML more alive this year?

What are you looking forward to at ITB?

His podcast Localhost.fm

Mentioned in this episode

  • Mission Impossible Intro 
  • Gitlab
  • Jenkins
  • Bitbucket
  • Testbox
  • cflint
  • CommandBox
  • Docker
    • CF Alive Docker episodes
      • Getting Started Fast with Docker, with Mark Drew
      • Secrets From the Folks Who Make the Official Lucee CFML Docker Images, with Geoff Bowers
      • Using Portainer.io (Docker Container Management) with Neil Cresswell
      • 066 The Docker Revolution for Faster ColdFusion Development (and Easier DevOps) with Bret Fisher
      • 071 ContentBox in the Cloud (Docker Magic) with Gavin Pickin
  • JMeter
  • ELK (The Open Source Elastic Stack)
    • ElasticSearch
    • Logstash
    • Kibana
  • JournalD
  • Kubernetes
  • CFMigrations by Eric Peterson
  • QueryBuilder (Fluent Query Builder for CFML)  by Eric Peterson
  • Portainer
    • Portainer episode
  • Rancher
  • ForgeBox

Listen to the Audio

https://traffic.libsyn.com/coldfusionalive/073_Planning_for_CFML_ISP_disaster_Commandbox_and_Docker_to_the_rescue_with_Mark_Drew.mp3

Podcast: Play in new window | Download | Embed

Subscribe: RSS

Bio

Mark Drew

Mark Drew 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.

Interview transcript

Michaela 0:01
Welcome back to the show. I'm here with Mark Drew, otherwise known as the amazing CFO from London.

Mark Drew 0:09
There's only one of us in London.

Michaela 0:12
Anyone know there's hundreds and hundreds of London? Yes. And he's the director of web development at CMT, which is a web development shop, I believe in the UK

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. So I'll put the link in the show notes to that.

So today we're looking at how CFS can get started fast with Docker and we're going to look at what a Docker container is and why everyone listening should care about that the challenges they overcome Docker versus vagrant, even controversially, our traditional I ISP, he's going to go away if Docker gets its way and how they compare the virtual machines. How you can get started with the Docker engine.

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 Next

ColdFusion Alive Best Practices Checklist

ColdFusion Alive Best Practices Checklist

Modern 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.

  • Facebook
  • Twitter
  • LinkedIn

Filed Under: CF Alive Podcast, Docker

← Previous Post Is Control Better than Speed for your ColdFusion Apps?
Next Post → CFCamp 2018 Announcements and Big Expectations

Primary Sidebar

Subscribe on iTunes

Popular podcast episodes

  • Revealing ColdFusion 2021 – Rakshith Naresh
  • CF and Angular – Nolan Erck
  • Migrating legacy CFML – Nolan Erck
  • Adobe API manager – Brian Sappey
  • Improve your CFML code – Kai Koenig

CF Alive Best Practices Checklist

Modern ColdFusion development best practices that reduce stress, inefficiency, project lifecycle costs while simultaneously increasing project velocity and innovation.

Get your checklist

Top articles

  • CF Hosting (independent guide)
  • What is Adobe ColdFusion
  • Is Lucee CFML now better than ACF?
  • Is CF dead?
  • Learn CF (comprehensive list of resources)

Recent Posts

  • 141 Into The Box 2025 ColdFusion conference (all the details) with Daniel Garcia – Transcript
  • 141 Into The Box 2025 ColdFusion conference (all the details) with Daniel Garcia
  • 107 ColdFusion 2021 Revealing Details on How it was Created with Rakshith Naresh
  • The Legacy Continues: ColdFusion Summit East Conference Edition
  • 140 BoxLang modern JVM language that runs CFML code (new CFML engine and much more) with Luis Majano and Brad Wood – Transcript

Categories

  • Adobe ColdFusion 11 and older
  • Adobe ColdFusion 2018
  • Adobe ColdFusion 2020 Beta
  • Adobe ColdFusion 2021
  • Adobe ColdFusion 2023
  • Adobe ColdFusion 2024
  • Adobe ColdFusion 2025
  • Adobe ColdFusion Developer week
  • Adobe ColdFusion Project Stratus
  • Adobe ColdFusion Summit
  • AWS
  • BoxLang
  • CF Alive
  • CF Alive Podcast
  • CF Camp
  • CF Tags
  • CF Vs. Other Languages
  • CFEclipse
  • CFML
  • CFML Open- Source
  • CFUnited
  • ColdBox
  • ColdFusion and other news
  • ColdFusion Community
  • ColdFusion Conference
  • ColdFusion Consulting
  • ColdFusion Developer
  • ColdFusion Development
  • ColdFusion Hosting
  • ColdFusion Maintenance
  • ColdFusion Performance Tuning
  • ColdFusion Projects
  • ColdFusion Roadmap
  • ColdFusion Security
  • ColdFusion Training
  • ColdFusion's AI
  • CommandBox
  • Docker
  • Fixinator
  • Frameworks
  • Fusebox
  • FusionReactor
  • IntoTheBox Conference
  • Java
  • JavaScript
  • JVM
  • Learn CFML
  • Learn ColdFusion
  • Legacy Code
  • Load Testing
  • Lucee
  • Mindmapping
  • MockBox
  • Modernize ColdFusion
  • Ortus Developer Week
  • Ortus Roadshow
  • Server Crash
  • Server Software
  • Server Tuning
  • SQL
  • Survey
  • Survey results
  • TestBox
  • Transcript
  • Webinar
  • Women in Tech

TeraTech

  • About Us
  • Contact

Services

  • Free assessment
  • Consulting
  • Crash
  • Development
  • Maintenance
  • Modernization
  • Security
  • Case Studies

Resources

  • CF Alive Book
  • CF Alive Podcast
    • Podcast Guest Schedule
  • TeraTech Blog
  • CF Alive resources
  • CF e-course
  • CF best practice checklist

Community

  • CF Alive
  • CF Inner Circle
  • CF Facebook Group

TeraTech Inc
451 Hungerford Drive Suite 119
Rockville, MD 20850

Tel : +1 (301) 424 3903
Fax: +1 (301) 762 8185

Follow us on Facebook Follow us on LinkedIn Follow us on Twitter Follow us on Pinterest Follow us on YouTube



Copyright © 1998–2025 TeraTech Inc. All rights Reserved. Privacy Policy.