Add WireGuard networking fields (interface, management pool, listen port), container network pool, coold/corrosion versioning, and builder CPU quota to clusters and servers via new migrations and model fillables. Expose full cluster and server CRUD on the Clusters page with private key selection, pending state tracking, and new form primitives (Field, Input, Textarea). Add server status check fields and a lima test VM config for development.
79 lines
2.7 KiB
YAML
79 lines
2.7 KiB
YAML
# Lima VM for testing Coolify v5 against coolify-provisioned hosts.
|
|
# Start with: scripts/coold-vm.sh up
|
|
#
|
|
# This file is copied into .dev/lima/coold.generated.yaml by the wrapper script,
|
|
# with {{COOLIFY_REPO}}, {{COOLIFY_COOLD_VERSION}}, and {{COOLIFY_CORROSION_VERSION}} replaced before Lima sees it.
|
|
|
|
vmType: "vz"
|
|
arch: "default"
|
|
cpus: 4
|
|
memory: "8GiB"
|
|
disk: "100GiB"
|
|
containerd:
|
|
system: false
|
|
user: false
|
|
|
|
ssh:
|
|
localPort: {{COOLIFY_COOLD_VM_SSH_PORT}}
|
|
|
|
images:
|
|
- location: "https://cloud-images.ubuntu.com/releases/24.04/release/ubuntu-24.04-server-cloudimg-amd64.img"
|
|
arch: "x86_64"
|
|
- location: "https://cloud-images.ubuntu.com/releases/24.04/release/ubuntu-24.04-server-cloudimg-arm64.img"
|
|
arch: "aarch64"
|
|
|
|
mountType: "virtiofs"
|
|
mounts:
|
|
- location: "{{COOLIFY_REPO}}"
|
|
mountPoint: "/workspace/coolify"
|
|
writable: true
|
|
|
|
portForwards:
|
|
- guestPort: 5173
|
|
hostPort: 5173
|
|
hostIP: "127.0.0.1"
|
|
- guestPort: 3000
|
|
hostPort: 3000
|
|
hostIP: "127.0.0.1"
|
|
provision:
|
|
- mode: system
|
|
script: |
|
|
#!/usr/bin/env bash
|
|
set -euxo pipefail
|
|
export DEBIAN_FRONTEND=noninteractive
|
|
echo "[coold-vm] Updating Ubuntu package index..."
|
|
apt-get update
|
|
echo "[coold-vm] Installing minimal VM dependencies..."
|
|
apt-get install -y --no-install-recommends \
|
|
bash \
|
|
ca-certificates \
|
|
curl \
|
|
iproute2 \
|
|
jq \
|
|
openssl \
|
|
sqlite3 \
|
|
sudo
|
|
cat >/usr/local/bin/rtk <<'SH'
|
|
#!/usr/bin/env bash
|
|
exec "$@"
|
|
SH
|
|
chmod +x /usr/local/bin/rtk
|
|
mkdir -p /etc/coolify /var/lib/coolify-dev
|
|
chmod 755 /etc/coolify
|
|
|
|
coolify_test_public_key="ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFuGmoeGq/pojrsyP1pszcNVuZx9iFkCELtxrh31QJ68 sail@76ff66d2e2dd"
|
|
install -d -m 700 /root/.ssh
|
|
touch /root/.ssh/authorized_keys
|
|
grep -qxF "$coolify_test_public_key" /root/.ssh/authorized_keys || echo "$coolify_test_public_key" >>/root/.ssh/authorized_keys
|
|
chmod 600 /root/.ssh/authorized_keys
|
|
target_home="$(getent passwd 501 | cut -d: -f6 || true)"
|
|
if [ -n "$target_home" ] && [ -d "$target_home" ]; then
|
|
owner="$(stat -c '%u:%g' "$target_home")"
|
|
install -d -m 700 -o "${owner%:*}" -g "${owner#*:}" "$target_home/.ssh"
|
|
touch "$target_home/.ssh/authorized_keys"
|
|
grep -qxF "$coolify_test_public_key" "$target_home/.ssh/authorized_keys" || echo "$coolify_test_public_key" >>"$target_home/.ssh/authorized_keys"
|
|
chown "$owner" "$target_home/.ssh/authorized_keys"
|
|
chmod 600 "$target_home/.ssh/authorized_keys"
|
|
fi
|
|
|
|
echo "[coold-vm] Minimal provisioning complete. coolify bootstrap will install WireGuard, Podman, Corrosion, coold, and builder."
|