Files
wild-cloud/docs/SETUP.md
Paul Payne 1fcec15853 Enhance dnsmasq setup with new scripts and documentation
- Add custom dictionary words for spell checking.
- Refactor wild-central-generate-setup script for improved error handling and structure.
- Create README.md for central dnsmasq setup with detailed instructions.
- Implement create-setup-bundle.sh and setup.sh scripts for setting up dnsmasq and PXE booting.
- Add transfer-setup-bundle.sh for transferring setup files to the server.
- Update SETUP.md with clearer instructions for initial setup and configuration.
- Introduce .gitignore for dnsmasq setup bundle.
2025-06-21 13:01:19 -07:00

2.6 KiB

Setting Up Your Wild-cloud

Initial setup

  • Add bin directory to your path.

Set up your personal cloud operations directory

cd ~
mkdir ~/my-wild-cloud
cd my-wild-cloud
wild-init
cp config.example.yaml config.yaml
cp secrets.example.yaml secrets.yaml

Configuring your wild-cloud

Now, update your config.yaml and secrets.yaml.

Instructions TBD.

Set up your Cloud Central

bin/wild-central-generate-setup

Set up Control Nodes

2. Install K3s (Lightweight Kubernetes)

See Cluster Node Setup.

Install Infrastructure Components

Currently, these are set up to run from this directory. This will be moved to (1) a bin/wild-generate-infrastructure-setup script to copy them all to your personal cloud dir, (2) wild-cli (to do the same), or (3) wild-central, once I get my mind made up.

One command sets up your entire cloud infrastructure:

./infrastructure_setup/setup-all.sh

This installs and configures:

  • MetalLB: Provides IP addresses for services
  • LongHorn: Provides distributed block storage on the cluster
  • Traefik: Handles ingress (routing) with automatic HTTPS
  • cert-manager: Manages TLS certificates automatically
  • CoreDNS: Provides internal DNS resolution
  • ExternalDNS: Updates DNS records automatically
  • Kubernetes Dashboard: Web UI for managing your cluster

Next Steps

Now that your infrastructure is set up, you can:

  1. Deploy Applications: See Applications Guide for deploying services and applications
  2. Access Dashboard: Visit https://dashboard.internal.yourdomain.com and use the token from ./bin/dashboard-token
  3. Validate Setup: Run ./infrastructure_setup/validate_setup.sh to ensure everything is working

Validation and Troubleshooting

Run the validation script to ensure everything is working correctly:

./infrastructure_setup/validate_setup.sh

This script checks:

  • All infrastructure components
  • DNS resolution
  • Service connectivity
  • Certificate issuance
  • Network configuration

If issues are found, the script provides specific remediation steps.

What's Next?

Now that your personal cloud is running, consider:

  • Setting up backups with Velero
  • Adding monitoring with Prometheus and Grafana
  • Deploying applications like Nextcloud, Home Assistant, or Gitea
  • Exploring the Kubernetes Dashboard to monitor your services

Welcome to your personal cloud journey! You now have the foundation for hosting your own services and taking control of your digital life.