Updated README and added TODO
This commit is contained in:
parent
e071937cf1
commit
13eece9d44
92
README.md
92
README.md
@ -1,21 +1,89 @@
|
|||||||
# NixOS Proxmox LXC Container Configuration
|
# NixOS Proxmox LXC Container Configuration
|
||||||
|
|
||||||
Quickly configure a NixOS LXC container in Proxmox with custom IP address and SSH key settings.
|
A comprehensive toolkit for managing NixOS containers in Proxmox VE. This repository provides automated configuration and management tools for NixOS LXC containers.
|
||||||
|
|
||||||
## One-Line Installation
|
## Features
|
||||||
|
|
||||||
|
- Automated container detection and configuration
|
||||||
|
- Optimized NixOS settings for LXC containers
|
||||||
|
- Automatic system upgrades and maintenance
|
||||||
|
- Proper terminal and shell configuration
|
||||||
|
- DHCP networking configuration
|
||||||
|
- Secure SSH access setup
|
||||||
|
- Nix Flakes support
|
||||||
|
- Garbage collection and store optimization
|
||||||
|
|
||||||
|
## Quick Installation
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
curl -sSf https://git.jeirslab.xyz/jeirmeister/NixOS-PVE-LXC/raw/branch/main/config-lxc.sh | bash
|
curl -sSf https://git.jeirslab.xyz/jeirmeister/NixOS-PVE-Deployment-Util/raw/branch/main/setup.sh | bash
|
||||||
```
|
```
|
||||||
|
|
||||||
The script will:
|
## What It Does
|
||||||
- Prompt for container ID (100-999)
|
|
||||||
- Request your SSH public key
|
|
||||||
- Ask for IP address and gateway
|
|
||||||
- Configure the container with these settings
|
|
||||||
- Apply the configuration automatically
|
|
||||||
|
|
||||||
**Note**: Always verify scripts before running them with curl. You can inspect the source at the repository first.
|
The installation script will:
|
||||||
|
1. Install required dependencies (git)
|
||||||
|
2. Clone/update the configuration repository
|
||||||
|
3. Detect available NixOS containers
|
||||||
|
4. Apply optimized configuration settings
|
||||||
|
5. Configure proper LXC terminal access
|
||||||
|
6. Set up system maintenance tasks
|
||||||
|
|
||||||
Citations:
|
## Manual Installation
|
||||||
[1] https://git.jeirslab.xyz/jeirmeister/NixOS-PVE-LXC/raw/branch/main/configuration.nix
|
|
||||||
|
If you prefer to inspect the code first:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git clone https://git.jeirslab.xyz/jeirmeister/NixOS-PVE-LXC.git
|
||||||
|
cd NixOS-PVE-LXC
|
||||||
|
./setup.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
## Directory Structure
|
||||||
|
|
||||||
|
```
|
||||||
|
.
|
||||||
|
├── nix-config/ # NixOS configuration files
|
||||||
|
│ ├── configuration.nix # Main configuration
|
||||||
|
│ ├── lxc.nix # LXC-specific settings
|
||||||
|
│ ├── network.nix # Network configuration
|
||||||
|
│ └── users.nix # User and SSH settings
|
||||||
|
└── scripts/ # Utility scripts
|
||||||
|
├── list-lxcs.sh # Container detection
|
||||||
|
├── mount-nixos-config.sh # Configuration deployment
|
||||||
|
├── rebuild-nixos.sh # System rebuild
|
||||||
|
└── setup-lxc-terminal.sh # Terminal setup
|
||||||
|
```
|
||||||
|
|
||||||
|
## Features in Detail
|
||||||
|
|
||||||
|
### System Optimization
|
||||||
|
- Automatic garbage collection
|
||||||
|
- Store optimization
|
||||||
|
- Weekly system updates
|
||||||
|
- Nix Flakes support
|
||||||
|
|
||||||
|
### Security
|
||||||
|
- SSH-based access
|
||||||
|
- No root login
|
||||||
|
- Wheel group for sudo access
|
||||||
|
- Secure default configurations
|
||||||
|
|
||||||
|
### Networking
|
||||||
|
- DHCP configuration
|
||||||
|
- IPv6 support
|
||||||
|
- Proper network interface setup
|
||||||
|
|
||||||
|
## Requirements
|
||||||
|
|
||||||
|
- Proxmox VE 7.0 or later
|
||||||
|
- NixOS LXC container(s)
|
||||||
|
- Root access to Proxmox host
|
||||||
|
|
||||||
|
## Contributing
|
||||||
|
|
||||||
|
Contributions are welcome! Please feel free to submit pull requests or create issues for bugs and feature requests.
|
||||||
|
|
||||||
|
## Note
|
||||||
|
|
||||||
|
Always review scripts before running them with curl. You can inspect all source code at the repository.
|
40
TODO.md
Normal file
40
TODO.md
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
## Roadmap & TODOs
|
||||||
|
|
||||||
|
### Planned Features
|
||||||
|
|
||||||
|
- **Automated Deployment**
|
||||||
|
- Deploy LXC containers with user-defined variables (hostname, cores, memory, storage)
|
||||||
|
- Deploy VMs using customizable templates and configurations
|
||||||
|
- Automated latest NixOS build fetching and deployment
|
||||||
|
- Host SSH key integration for secure access
|
||||||
|
|
||||||
|
- **Configuration Management**
|
||||||
|
- Support for custom NixOS configuration overlays
|
||||||
|
- Template-based configuration system
|
||||||
|
- LXC-specific optimization notes and best practices
|
||||||
|
|
||||||
|
### Integration Goals
|
||||||
|
- Pending compatibility and integration into [Proxmox Community Scripts](https://community-scripts.github.io/ProxmoxVE/)
|
||||||
|
- Support for custom configuration files with minimal LXC requirements
|
||||||
|
|
||||||
|
### Development Notes
|
||||||
|
```bash
|
||||||
|
# LXC Deployment Variables
|
||||||
|
- Container ID
|
||||||
|
- Resource allocation (CPU, RAM, Storage)
|
||||||
|
- Network configuration
|
||||||
|
- User access and SSH keys
|
||||||
|
|
||||||
|
# VM Deployment Variables
|
||||||
|
- VM ID
|
||||||
|
- Hardware configuration
|
||||||
|
- Boot options
|
||||||
|
- Network settings
|
||||||
|
```
|
||||||
|
|
||||||
|
### Current Limitations
|
||||||
|
- Manual container creation required
|
||||||
|
- Limited template customization
|
||||||
|
- No automated SSH key management
|
||||||
|
|
||||||
|
This roadmap will be updated as development progresses.
|
Loading…
Reference in New Issue
Block a user