Problem
Terraform Enterprise deployment on Podman fails to start withError: /fdo/kube.yaml: failed to create volume "log": HostPath, ConfigMap, and PersistentVolumeClaim are currently the only supported VolumeSource
Prerequisites
- Terraform Enterprise on Podman
Cause
Podman version is lower that 4.3.0, which is required as per the System Requirements.
This can be validated by executing podman version
command on virtual machine(s) where the installation of TFE failed:
$ podman version
Version: 4.2.2
The reason why we require to run TFE on Podman v4.3.0 (or newer) is the support of emptyDir
block that was unavailable in older versions.
For the reference, we have the following part in the Example Configurations section:
volumes:
...
- emptyDir:
medium: "Memory"
name: "log"
- emptyDir:
medium: "Memory"
name: "run"
- emptyDir:
medium: "Memory"
name: "tmp"
Solution
Make sure to install Podman v4.3.0 or newer.
The steps are specific for different Operating Systems and available in Podman documentation.
Outcome
podman kube play <path_to_YAML_file>
didn't return the error message.
Additional Information
- System Requirements for Podman deployment - https://developer.hashicorp.com/terraform/enterprise/deploy/prepare-host#podman
- Pull Request to support
emptyDir
block in Podman v4.3.0 - https://github.com/containers/podman/issues/13309