Octopus Deploy Documentation

Samples instance

Last updated

Many of the deployment samples in our docs reference our Octopus Cloud samples instance which contains real-world deployment and runbook examples. Each one highlights one or more Octopus features available for you to use, from deploying Java applications, to upgrading a Helm chart in a Kubernetes cluster.

This page acts as a directory of features found in our samples instance.

We're constantly adding to our samples instance. If you'd like to explore any of our samples further, just go to https://samples.octopus.app and log in as a guest.

Deployment features

This section contains Octopus features that are found in Project deployment processes in the samples instance. Each feature list is categorized by the Octopus Space and Project in which it can be found.

AWS

Explore examples of Octopus Deploy's AWS integration, including EC2, AWS RDS database, AWS CLI, Lambda and ECS deployments.

Secrets Management

Target - Containers

Target - MariaDB

Target - MySQL

Target - Oracle

Target - PostgreSQL

Target - Serverless

Target - SQL Server

Target - Tomcat

Tenants - Regions

  • To Do - Linux: This project will deploy this .NET Core application to Ubuntu EC2 instances in AWS. The EC2 instances are located in US West 1, US West 2 and US East 2.

Azure

Explore ways to use Octopus Deploy's built-in Azure steps, including Azure WebApp, Azure CLI, ARM template and Azure SQL deployments.

Octopus Admin

  • AzFuncNotifySlack: Azure Function App that consumes Octopus subscription webhook and send message to Slack

Pattern - Canary

  • Deploy Web App: A sample project showing canary deployments of RandomQuotes to Azure WebApps.

Pattern - Monolith

Pattern - Rolling

Pattern - Tenants

Pattern-AutoScaling

  • Azure VMSS Orchestration: A sample project showing how to use an orchestration project to deploy child applications with an Azure Virtual Machine scale set (VMSS).
  • App + VMSS: A sample project showing how to deploy an application when using an Azure Virtual Machine scale set (VMSS).

Secrets Management

Target - Hybrid

Target - PaaS

  • OctoPetShop: A .NET Core Sample application used by Octopus to sample deployments and Runbooks. This example deploys OctoPetShop to Azure PaaS. The Product, Shopping Cart and Web App are deployed to Azure Web Apps and the Database to an empty Azure SQL server - Build

Target - Serverless

Target - Tomcat

Google Cloud

Find out more about the new Octopus dedicated Google Cloud support, including gcloud CLI, Google Container Registry (GCR), Terraform and Kubernetes deployments.

Pattern - Rolling

Secrets Management

Target - Containers

IIS

Learn more about the IIS support that Octopus has to offer, including IIS deployments, and community step templates that allow fine-grain control of your IIS Websites and applications.

Pattern - Blue-Green

Pattern - IaC

  • Random Quotes - Azure: Uses runbooks to create Azure virtual machines using Terraform code for hosting an application and backing database, then deploys the Random Quotes database and application to those machines.
  • Random Quotes AWS: This is a sample project that showcases the use of Terraform with runbooks to create the infrastructure that is needed for a projects deployments. The runbooks in this project spin up two EC2 instances within AWS that are then used to deploy the Random Quotes web application and database to.

Pattern - Rollbacks

  • 03 OctoFX - Complex Rollback: A sample .NET project showing deployments to Windows with a complex set of rollback functionality added.
  • 01 OctoFx - Original: A sample .NET project showing deployments to Windows without any rollback functionality.
  • 02 OctoFX - Simple Rollback: A sample .NET project showing deployments to Windows with a simple set of rollback functionality added.

Pattern-AutoScaling

Target - Hybrid

Target - Windows

Java

Octopus has a range of Java application deployment examples, from deploying to Tomcat via Manager, deployments to Wildfly EAP and community step templates that offer first-class database deployment options like Flyway.

Pattern - Blue-Green

Pattern - Rollbacks

Pattern - Rolling

Target - Tomcat

Target - Wildfly

  • PetClinic: A sample project deploying the Java PetClinic app to a Linux VM in Azure.

Kubernetes

View practical Kubernetes examples, including deployment, service, ingress resources, and helm chart upgrades.

Pattern - Rollbacks

Target - Kubernetes

  • Rancher: A sample project that deploys the PetClinic application to a Rancher-managed Kubernetes cluster.
  • OctopusDeploy: Setup an AWS EKS Cluster and target within Octopus Resources: AWS EKS Configuration eksctrl
  • Multi-Cloud PetClinic: Setup AWS EKS, GCP GKE, and Azure AKS Clusters and targets within Octopus
  • Database: A sample project that deploys the database component of the Octo Pet Shop application to Kubernetes.
  • Product API: A sample project that deploys the Product API component of the Octo Pet Shop application to Kubernetes.
  • Shopping Cart API: A sample project that deploys the Shopping Cart API component of the Octo Pet Shop application to Kubernetes.
  • Web App: A sample project that deploys the main Web app component of the Octo Pet Shop application to Kubernetes.
  • Migrations: A sample project that deploys the database migrations of the Octo Pet Shop application to Kubernetes.
  • Octo Pet Shop - Raw YAML: A sample project that uses the Deploy RAW YAML step to deploy the OctoPetShop app to a Kubernetes cluster.
  • MySQL Helm Chart: Sample showing how to deploy the MySQL Helm Chart.
  • PetClinic: Setup an AWS EKS Cluster and target within Octopus Resources: AWS EKS Configuration eksctrl
  • nginx+httpd: A sample project showing deployment of nginx and httpd as described in this blog post.

Runbook features

This section contains features that are found in Octopus runbooks in our samples instance. Each feature list is categorized by the Octopus Space, Project and runbook in which it can be found.

AWS

Explore examples of Octopus Deploy's AWS integration, including EC2, AWS RDS database, AWS CLI, Lambda and ECS deployments.

Pattern - Blue-Green

Pattern - Rolling

Pattern-AutoScaling

Secrets Management

  • AWS Secrets Manager
    • Retrieve Secrets: This runbook retrieves secrets from AWS Secrets Manager and creates sensitive output variables to use in deployments and runbooks.

Target - Containers

Target - Kubernetes

  • Multi-Cloud PetClinic
  • OctopusDeploy
    • Create Cluster: Creating a two node Kubernetes cluster in AWS using eksctl. Rather than the default configuration eksctl will use this cluster config.
    • Delete Cluster: Delete Kubernetes cluster and node groups from AWS
  • PetClinic
    • Create Cluster: Creating a two node Kubernetes cluster in AWS using eksctl. Rather than the default configuration eksctl will use this cluster config.

This creates a single cluster in the Production environment, and then copies it as a target to all environments

Target - Serverless

Target - SQL Server

Target - Tomcat

Tenants - Regions

Azure

Explore ways to use Octopus Deploy's built-in Azure steps, including Azure WebApp, Azure CLI, ARM template and Azure SQL deployments.

Octopus Admin

Pattern - IaC

Pattern - Rolling

Pattern - Tenants

Pattern-AutoScaling

Secrets Management

  • Azure Key Vault
    • Create Azure Key Vault: This runbook creates the infrastructure required for retrieving secrets from Azure Key Vault.
    • Retrieve Secrets: This runbook retrieves secrets from Azure Key Vault and creates sensitive output variables to use in deployments and runbooks.
  • HashiCorp Vault

Target - Kubernetes

Target - Payara

Target - Serverless

Target - SQL Server

Target - Tomcat

Target - WebSphere

Target - Windows

  • OctoFX
    • Manual Failover to Primary: This is a Runbook designed to failover back from Disaster Recovery in UK South to Western Europe. Please check all resources are healthy before running this Runbook:
      • Must be run in the context of Production for URL testing to work successfully.
    • Monitor Primary Website & Failover to DR if offline: This is to be run in the context of Disaster Recovery so it can spin up the correct machines and then failover:
      • Checks Production URL
      • Starts DR SQL & Web
      • Switches DNS over. 60s TTL
    • Start Environment: Starts the Web and SQL Server for specified environments. This is the template for the scheduled triggers turning on Infrastructure
    • Stop Environment: Stops the Web and SQL Server for specified environments. This is the template for the scheduled triggers turning off Infrastructure

Google Cloud

Find out more about the new Octopus dedicated Google Cloud support, including gcloud CLI, Google Container Registry (GCR), Terraform and Kubernetes deployments.

Pattern - Rolling

Secrets Management

  • GCP Secret Manager
    • Retrieve Secrets: This runbook retrieves secrets from Google Cloud Secret Manager and creates sensitive output variables to use in deployments and runbooks.

Target - Kubernetes

IIS

Learn more about the IIS support that Octopus has to offer, including IIS deployments, and community step templates that allow fine-grain control of your IIS Websites and applications.

Pattern - Blue-Green

Target - Windows

  • Computer Provisioning
  • OctoFX
    • Backup & Restore SQL Backup from Production to Environment: Back up Production Database and Restore to Environment picked during running.

      • If you select Production, it will overwrite Production (Only to be used for Restoring backups to Production)
      • If you select Test, it will restore to Test
      • If you select Development, it will restore to Development
      • If you select Disaster Recovery, it will restore to Disaster Recovery
    • Install Dependencies: Installs Dependencies for the application to run. It installs the following:

      • Chocolatey
      • Chocolatey VSCode Install
      • Chocolatey .NET 4.7.2
      • Chocolatey .NET 4.8
      • Installs IIS & Dependencies
      • Checks for Pending Restarts and Restarts if required.
    • Restart IIS AppPool: Restarts an IIS AppPool in required environment

    • Restart IIS Website: Runbook that restarts a named IIS Website

    • Start IIS AppPool: Starts IIS App Pool on Web Servers

    • Stop IIS AppPool: Stops an IIS AppPool in required environment

Java

Octopus has a range of Java application deployment examples, from deploying to Tomcat via Manager, deployments to Wildfly EAP and community step templates that offer first-class database deployment options like Flyway.

Pattern - Rollbacks

Kubernetes

View practical Kubernetes examples, including deployment, service, ingress resources, and helm chart upgrades.

Target - Kubernetes

Terraform

See how to use Octopus built-in Terraform steps to manage your infrastructure and resources in a convention-based, templated way. Our samples instance includes terraform plan, apply and destroy terraform steps.

Pattern - IaC

Target - Serverless

Target - Windows

  • eShopOnWeb
    • Create Infrastructure: Stands up an Azure VM with IIS and SQL Server Express using Terraform for eShopOnWeb to be deployed on to.
    • Destroy Infrastructure: Destroys the Azure VM and infrastructure created for this project.

Tenants - Regions

Need support? We're here to help.