βοΈ Optimized Gentoo Linux images for OpenStack and Proxmox environments with cloud-init support
π Explore the docs Β»
π Report Bug
Β·
π‘ Request Feature
This project provides optimized Gentoo Linux images specifically designed for OpenStack and Proxmox cloud environments. Gentoo Linux is a highly flexible, source-based Linux distribution that allows for extreme customization and performance optimization.
Our build process uses the official Gentoo Linux experimental images from OSUOSL repository and customizes them using libguestfs tools to ensure seamless cloud integration. The customization process includes:
- βοΈ Cloud-init integration: Enhanced OpenStack datasource configuration for automated provisioning
- π§ Minimal modifications: Preserves the original Gentoo experience with only essential cloud adaptations
- π¦ Clean deployment: Ready-to-use images with optimized cloud-init configuration
- πΎ Storage optimization: Image sparsification and compression for efficient deployment
- βοΈ Source-based: Based on Gentoo's flexible source-based distribution architecture
- π Security-focused: Hardened Gentoo configuration with regular security updates
- β‘ Performance optimized: Customizable and highly efficient for specialized cloud workloads
- π Cloud-native: Full cloud-init support with OpenStack-specific datasources
- π€ Automated builds: Images automatically updated monthly from official Gentoo releases
- π Minimal changes: Maintains full compatibility with existing Gentoo workflows
Images are automatically built and released monthly based on the latest Gentoo Linux experimental images from the official OSUOSL repository. The CI/CD pipeline ensures fresh images with the latest security updates and cloud optimizations.
- Set your OpenStack environment variables
- Download the latest image from the π₯ repository page
- Upload image to your OpenStack environment:
openstack image create --disk-format=qcow2 --container-format=bare --file gentoo-amd64-default-<BUILD_RELEASE>.qcow2 'Gentoo Linux'
-
Download the latest image from the π₯ repository page
-
Copy the image to your Proxmox storage:
scp gentoo-amd64-default-<BUILD_RELEASE>.qcow2 root@proxmox-host:/var/lib/vz/template/iso/
-
Create a new VM using the uploaded image:
# Create VM with cloud-init support qm create <VMID> --name gentoo-template --memory 2048 --cores 2 --net0 virtio,bridge=vmbr0 # Import the disk qm importdisk <VMID> gentoo-amd64-default-<BUILD_RELEASE>.qcow2 <STORAGE> # Configure the VM qm set <VMID> --scsihw virtio-scsi-pci --scsi0 <STORAGE>:vm-<VMID>-disk-0 qm set <VMID> --boot c --bootdisk scsi0 qm set <VMID> --ide2 <STORAGE>:cloudinit qm set <VMID> --serial0 socket --vga serial0
-
Configure cloud-init settings:
# Example cloud-init configuration qm set <VMID> --ciuser gentoo --cipassword <PASSWORD> qm set <VMID> --sshkeys ~/.ssh/authorized_keys qm set <VMID> --ipconfig0 ip=dhcp
- Default user:
gentoo(standard Gentoo convention) - SSH access: Key-based authentication enabled by default
- Cloud-init: Configured with OpenStack and ConfigDrive datasources
- Package manager: Portage with emerge for source-based package management
- Root access: Disabled by default (use sudo with gentoo user)
- Init system: OpenRC (Gentoo's default init system)
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! β Thanks again!
- π΄ Fork the Project
- πΏ Create your Feature Branch (
git checkout -b feature/AmazingFeature) - πΎ Commit your Changes (
git commit -m 'Add some AmazingFeature') - π€ Push to the Branch (
git push origin feature/AmazingFeature) - π Open a Pull Request
Distributed under the GPL-2.0 License. See LICENSE.md for more information.
Kevin Allioli - π¦ @NetArchitect404 - π§ kevin@netarch.cloud
Project Link: π https://github.com/open-img-cloud/gentoo-linux