wildgrove.dev is an Astro-backed static site. Day-to-day development still happens with Astro's local development server, while Docker gives the project a production-style build and serving workflow.
The site keeps post content and shared visual assets in separate repositories that are mounted as Git submodules:
contentstores posts and curated site datapublic/assetsstores public images, logos, fonts, and other static assets
Astro's local development server is used for site work:
npm run devThe Docker setup provides a production-style local serving path:
- a multi-stage
Dockerfilebuilds the site with Node nginxto serve the generateddist/outputcompose.ymlruns the containerized site onhttp://localhost:8080
Containerized local run:
docker compose up --buildThe public site is deployed with Cloudflare Pages. The Cloudflare project builds from the GitHub repository and serves Astro's generated static output.
Cloudflare Pages settings:
- build command:
npm run build - build output directory:
dist - submodules: enabled through the GitHub checkout workflow
Astro build:
npm run buildDocker image build:
docker build -t wildgrove-dev .Docker image run:
docker run --rm -p 8080:80 wildgrove-dev