Infrastructure as Code (IaC)

  • To get a server to be useful you need two things:
    1. Provision (create) the infrastructure
    2. Configure the infrastructure
  • No clear dividing line between provisioning and configuring tools
  • Docker is part of IaC, but you still need a deployment framework and hypervisor or other container management software
  • IaC should be deployed with CI/CD, but doesn’t have to be
  • You’re not safe from your own bad habits

Shiny example:

  1. Set up a server
  2. Configure network settings
  • Security
  • Ports
  • Anything else
  1. Install R (or Python or whatever)
  2. Install Shiny
  3. Hosting software