-
static-web-server
A cross-platform, high-performance and asynchronous web server for static files-serving. ⚡
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
Ansible
Ansible is a radically simple IT automation platform that makes your applications and systems easier to deploy and maintain. Automate everything from code deployment to network configuration to cloud management, in a language that approaches plain English, using SSH, with no agents to install on remote systems. https://docs.ansible.com.
# vars/aarch64.yml --- static_web_server_download_url: https://github.com/static-web-server/static-web-server/releases/download/v2.28.0/static-web-server-v2.28.0-armv7-unknown-linux-musleabihf.tar.gz static_web_server_checksum: 492dda3749af5083e5387d47573b43278083ce62de09b2699902e1ba40bf1e45
OpenTofu v1.6
Ansible v2.16
resource "tls_private_key" "this" { algorithm = "ECDSA" ecdsa_curve = "P384" } resource "hcloud_ssh_key" "this" { name = var.stack_name public_key = tls_private_key.this.public_key_openssh } resource "hcloud_server" "this" { name = var.stack_name server_type = "cax11" image = "ubuntu-22.04" location = "nbg1" ssh_keys = [ hcloud_ssh_key.this.id, ] public_net { ipv4 = hcloud_primary_ip.this["ipv4"].id ipv6 = hcloud_primary_ip.this["ipv6"].id } user_data = <<-EOF #cloud-config users: - name: ${var.username} groups: users, admin, adm sudo: ALL=(ALL) NOPASSWD:ALL shell: /bin/bash ssh_authorized_keys: - ${tls_private_key.this.public_key_openssh} packages: - certbot package_update: true package_upgrade: true runcmd: - sed -i -e '/^\(#\|\)PermitRootLogin/s/^.*$/PermitRootLogin no/' /etc/ssh/sshd_config - sed -i -e '/^\(#\|\)PasswordAuthentication/s/^.*$/PasswordAuthentication no/' /etc/ssh/sshd_config - sed -i '$a AllowUsers ${var.username}' /etc/ssh/sshd_config - | curl https://get.k3s.io | \ INSTALL_K3S_VERSION="v1.29.3+k3s1" \ INSTALL_K3S_EXEC="--disable traefik --kube-apiserver-arg=service-account-jwks-uri=https://${cloudflare_record.this.name}/openid/v1/jwks --kube-apiserver-arg=service-account-issuer=https://${cloudflare_record.this.name} --disable-network-policy --flannel-backend none --write-kubeconfig /home/${var.username}/.kube/config --secrets-encryption" \ sh - - chown -R ${var.username}:${var.username} /home/${var.username}/.kube/ - | CILIUM_CLI_VERSION=v0.16.4 CLI_ARCH=arm64 curl -L --fail --remote-name-all https://github.com/cilium/cilium-cli/releases/download/$CILIUM_CLI_VERSION/cilium-linux-$CLI_ARCH.tar.gz{,.sha256sum} sha256sum --check cilium-linux-$CLI_ARCH.tar.gz.sha256sum sudo tar xzvfC cilium-linux-$CLI_ARCH.tar.gz /usr/local/bin - kubectl completion bash | tee /etc/bash_completion.d/kubectl - k3s completion bash | tee /etc/bash_completion.d/k3s - | cat << 'EOF2' >> /home/${var.username}/.bashrc alias k=kubectl complete -F __start_kubectl k EOF2 - reboot EOF }