Skip to content

Conversation

@synacktraa
Copy link

Changes

Removed Features

  • Windows ISO downloader (mido.sh) - No longer needed as users provide their own custom ISOs
  • Multiple Windows version configurations - Removed unattend XML files for different Windows versions
  • Devcontainer configurations - Removed devcontainer templates for different Windows versions
  • Kubernetes manifests - Removed kubernetes.yml as this fork targets Docker/Docker Compose only

Updated Components

  • Docker Compose - Simplified configuration with two profiles:
    • Default windows service for running pre-built golden images
    • prepare-golden-image profile for creating golden images from custom ISOs
  • GitHub Actions - Updated workflow to publish to Docker registry
  • Documentation - Updated README with Docker Compose usage examples

Testing

  • ✅ Golden image creation from custom ISO works correctly
  • ✅ Container starts successfully with pre-built golden images
  • ✅ Docker Compose configuration validated
  • ✅ Documentation updated

compose.yml Outdated
volumes:
- ${STORAGE}:/storage

prepare-golden-image:

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what's this?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The prepare-golden-image service is for creating the golden Windows image from the ISO. You run it once with docker compose --profile prepare-golden-image up to build the image, then use the regular service to boot from it.

Please refer the usage section in readme: https://github.com/trycua/windows-local/blob/8c93722be46d43d7c5794f5b9c0268e1ddb37812/readme.md#via-docker-compose

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This does not work. I have made two separate compose files - see this commit: e241426

-p 8006:8006 \
--device=/dev/kvm \
--cap-add NET_ADMIN \
--mount type=bind,source=./custom.iso,target=/custom.iso \

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

did you make sure subsequent run don't need the custom.iso attached, and you can instead mount the storage?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, I did and it works!

- Split compose.yml into two files: compose.yml for running and compose.prepare.yml for golden image preparation
- Rename env vars STORAGE->STORAGE_DIR and ISO->ISO_FILE to avoid conflicts with internal script variables
- Remove unused VERSION env var (hardcoded in scripts)
- Update README with new command syntax
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants