Air-gapped install¶
Goal¶
This tutorial will guide you through building a docker container with all dependencies inside, for installing Hashistack in an air-gapped environment.
Prerequisites¶
Follow the Docker Installer guide.
Docker on your deploy system
Debian 11 fresh install and up to date
DNS delegation
Wildcard certificate for subdomain
SSH key
Steps¶
Build the container with dependencies inside
> make container-offline-installer
Start container from hashistack directory:
> docker run --rm -it --mount type=bind,source=${PWD}/inventories,target=/opt/hashistack/inventories --mount type=bind,source=${PWD}/.env.secrets,target=/opt/hashistack/.env.secrets -h hs-offline hs-offline:latest bash
Enable direnv:
> direnv allow
Create instance directory
> make init_instance name=XXXX parent_domain=%sub.domain.tld% archi=mono
> cd inventories/hs_XXXX
Update ssh file and test
> vim ssh.cfg
> ansible all -m ping -v
Upload all dependencies
> ansible-playbook ../../playbooks/00_offline_prepare.yml
Deploy
> make stage_1 stage_2 stage_3 stage_4 ARGS="--skip-tags=online"