Skip to content

thirdgen88/ignition-examples

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ignition Architectures with Docker Compose

Ignition 8.1.43

Inductive Automation's Ignition Architectures implemented with Docker Compose.

Warning

These architecture stacks are for demonstration purposes only. Production deployments should be using SSL/TLS for Gateway Web UI and Gateway Network connections!

Prerequisites

To launch these architecture examples, you'll need to have Docker Engine and Docker Compose installed. These are available as part of Docker Desktop. You can also install Docker Engine directly on Linux and follow up with Compose V2 CLI plugin.

Once you've got Docker ready to go, click one of the architecture links up top to get started!

Common Configuration

Each of the Compose solutions in this repository leverage some common configurability.

  • .env file - This contains some environment variables that will be loaded in by Docker Compose. Variables such as COMPOSE_PROFILES can be used to enable some optional functionality (such as redundancy) in the solution. Additionally, global settings such as the IGNITION_VERSION for the image tag can be defined here.

  • docker-compose.yml - This is the YAML file that defines the containers and associated configuration for the architecture.

  • secrets folder - ⚠️ WARNING: These secrets exist in-repo for demo purposes only. Never commit your secrets to source control! This folder contains secrets that are mapped into a given container and used for setting up credentials. The files here are referenced within the secrets: keys of the docker-compose.yml. Note that the gateway admin password of password can be updated by uncommenting the GATEWAY_ADMIN_* environment variables in gw-init/gateway.env prior to bringing up a given architecture solution.

  • gw-init folder - This folder contains seed files for the solution that are sourced from the docker-compose.yml file. Items such as gateway backups, gateway network keystores/identifiers, and environment files are used when launching the solution.

  • gw-backup folder - Sub-folders under here may be bind-mounted into the various containers and used as the target for scheduled gateway backups.

  • gw-build folder - If this folder is present, it is used to build a derived image as part of the solution. Custom functionality such as third-party module bundling can be layered onto the base inductiveautomation/ignition image. The derived image is then automatically used to launch containers in the solution.

  • sql-init folder - Many database containers allow some pre-configuration scripts to be executed on first-launch. If this folder is present, the database server container may stage schemas/users on startup to provide the required configuration for the connected gateways.