An OpenTofu image with Terramate and tofu-age.
The image ships the tofu-age binary only, never an age identity: inject TOFU_AGE_IDENTITY at runtime to
decrypt state and plan files:
docker run -it -v $(pwd):/workspace -e TOFU_AGE_IDENTITY --rm ghcr.io/specsnl/opentofu:latestPulling image from GitHub Container Registry:
docker pull ghcr.io/specsnl/opentofu:latestInteractive shell and mounting the current directory:
docker run -it -v $(pwd):/workspace --rm ghcr.io/specsnl/opentofu:latestDefault workspace: /workspace
The ghcr.io/specsnl/opentofu/upctl image extends the OpenTofu image with the
UpCloud CLI (upctl), jq and yq:
docker run -it -v $(pwd):/workspace --rm ghcr.io/specsnl/opentofu/upctl:latestThis project uses Task (a task runner / build tool).
Available tasks for this project:
* build: Build the OpenTofu and upctl images
* check-updates: Check for newer versions of the pinned tools
* lint: Apply a Dockerfile linter (https://github.com/hadolint/hadolint)
* shell: Interactive shell
* shell:upctl: Interactive shell in the upctl image