Use this referral code to get €20 in credits (at time of writing).
DevPod on Hetzner. This is based upon the DigitalOcean provider.
To use this provider in your DevPod setup, you will need to do the following steps:
- See the DevPod documentation for how to add a provider
- Use the reference
mrsimonemms/devpod-provider-hetzner
to download the latest release from GitHub - Get an API token from Hetzner. This will be used to manage resources.
These are pre-configured in Dev Containers
Variable | Description | Example |
---|---|---|
DISK_IMAGE |
Hetzner image tag | docker-ce |
DISK_SIZE |
Disk size in GB | 30 |
GIT_REPO |
Git repo to download | github.com/mrsimonemms/devpod-provider-hetzner |
HCLOUD_TOKEN |
Hetzner API key | - |
MACHINE_FOLDER |
Local home folder | ~/.ssh |
MACHINE_ID |
Unique identifier for the machine | some-machine-id |
MACHINE_TYPE |
Hetzner machine size | cx22 |
REGION |
Hetzner region ID | nbg1 |
To test the provider workflow, you can run the CLI commands directly.
Command | Description | Example |
---|---|---|
command |
Run a command on the instance | COMMAND="ls -la" go run . command |
create |
Create an instance | go run . create |
delete |
Delete an instance and volume | go run . delete |
init |
Initialise an instance | go run . init |
start |
Start an instance | go run . start |
status |
Retrieve the status of an instance | go run . status |
stop |
Stop an instance | go run . stop |
This assumes a Linux AMD64 workspace - if you're developing on any other machine please update the instructions for that machine (PRs welcome).
These paths may differ on your machine.
To test the provider within the DevPod ecosystem:
-
Install the latest version of the Hetzner provider
-
Backup the original binary:
mv ~/.devpod/contexts/default/providers/hetzner/binaries/hetzner_provider/devpod-provider-hetzner-linux-amd64 ~/.devpod/contexts/default/providers/hetzner/binaries/hetzner_provider/devpod-provider-hetzner-linux-amd64-orig
-
Build the binary:
go build .
-
Move the new binary to the DevPod base:
mv ./devpod-provider-hetzner ~/.devpod/contexts/default/providers/hetzner/binaries/hetzner_provider/devpod-provider-hetzner-linux-amd64