-
Notifications
You must be signed in to change notification settings - Fork 3
docs: add containers README and fix YAML formatting #7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| @@ -0,0 +1,98 @@ | ||||||||||
| # Containers Configuration | ||||||||||
|
|
||||||||||
| ## Overview | ||||||||||
| `containers.yml` defines LXC/Incus containers that run on the infrastructure. Each entry creates a development environment for a team member. | ||||||||||
|
|
||||||||||
| ## Quick Start Workflow | ||||||||||
|
|
||||||||||
| ### 1. Clone the Repository | ||||||||||
| ```bash | ||||||||||
| git clone https://github.com/tinkerhub/infried.git | ||||||||||
| cd infried | ||||||||||
| ``` | ||||||||||
|
|
||||||||||
| ### 2. Create a Feature Branch | ||||||||||
| ```bash | ||||||||||
| git checkout -b "feat/add-member-NAME" | ||||||||||
| ``` | ||||||||||
| Replace `NAME` with the member's username (e.g., `feat/add-member-jasim`). | ||||||||||
|
|
||||||||||
| ### 3. Update containers.yml | ||||||||||
| Edit `containers/containers.yml` and add the new container configuration (see section below). | ||||||||||
|
|
||||||||||
| ### 4. Commit and Create PR | ||||||||||
| ```bash | ||||||||||
| git add containers/containers.yml | ||||||||||
| git commit -m "feat: add container for member-NAME" | ||||||||||
| git push origin feat/add-member-NAME | ||||||||||
| ``` | ||||||||||
| Then create a pull request on GitHub. | ||||||||||
|
|
||||||||||
| --- | ||||||||||
|
|
||||||||||
| ## How to Add a Container | ||||||||||
|
|
||||||||||
| Copy this template and update the values: | ||||||||||
|
|
||||||||||
| ```yaml | ||||||||||
| - name: username | ||||||||||
| bridge: incusbr-members | ||||||||||
| cpu: 4 | ||||||||||
| memory: 4GB | ||||||||||
| disk: 5GB | ||||||||||
| ssh_port: 222X | ||||||||||
| user: username | ||||||||||
| ssh_key: "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5... full_key" | ||||||||||
| ``` | ||||||||||
|
|
||||||||||
| ## Parameters | ||||||||||
|
|
||||||||||
| | Parameter | Description | Example | | ||||||||||
| |-----------|-------------|---------| | ||||||||||
| | **name** | Container identifier (unique) | `member-sexy-jasim` | | ||||||||||
| | **bridge** | Network bridge to connect | `incusbr-members` (standard, dont change unless uk what ur doing ) | | ||||||||||
|
Comment on lines
+52
to
+53
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Use professional language and examples in documentation.
📝 Proposed fix-| **name** | Container identifier (unique) | `member-sexy-jasim` |
-| **bridge** | Network bridge to connect | `incusbr-members` (standard, dont change unless uk what ur doing ) |
+| **name** | Container identifier (unique) | `member-jasim` |
+| **bridge** | Network bridge to connect | `incusbr-members` (standard for members, do not change unless required) |📝 Committable suggestion
Suggested change
🤖 Prompt for AI Agents |
||||||||||
| | **cpu** | CPU cores allocated | `4` | | ||||||||||
| | **memory** | RAM allocation | `4GB` | | ||||||||||
| | **disk** | Storage space | `5GB` | | ||||||||||
| | **ssh_port** | VPS port for SSH access | `2223` (must be unique) | | ||||||||||
| | **user** | Linux username inside container | `jasim` | | ||||||||||
| | **ssh_key** | Public SSH key (ed25519 preferred) | Full key string | | ||||||||||
|
|
||||||||||
| ## Getting SSH Key | ||||||||||
|
|
||||||||||
| if you dont have a ssh key pair, generate it via, the command below and copy the **public key**: | ||||||||||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Fix capitalization and grammar. The sentence should start with a capital letter and include proper punctuation. 📝 Proposed fix-if you dont have a ssh key pair, generate it via, the command below and copy the **public key**:
+If you don't have an SSH key pair, generate one using the command below and copy the **public key**:📝 Committable suggestion
Suggested change
🤖 Prompt for AI Agents |
||||||||||
| ```bash | ||||||||||
| ssh-keygen -t ed25519 -C "user@domain.com" | ||||||||||
| cat ~/.ssh/id_ed25519.pub | ||||||||||
| ``` | ||||||||||
|
|
||||||||||
| Copy the entire output starting with `ssh-ed25519`. | ||||||||||
|
|
||||||||||
| ## Rules | ||||||||||
|
|
||||||||||
| - **Port numbers must be unique** — no duplicates | ||||||||||
| - **Names must be unique** — used as container identifier | ||||||||||
| - **Bridge should be** `incusbr-members` for member containers | ||||||||||
| - **Indentation matters** — YAML format is strict (use spaces, not tabs) | ||||||||||
|
|
||||||||||
| ## Example: Adding a New Member | ||||||||||
|
|
||||||||||
| User provides: | ||||||||||
| - Name: `jasi` | ||||||||||
| - SSH key: `ssh-ed25519 AAAAC3NzaC1lZDI1...` | ||||||||||
| - Preferred port: `2225` | ||||||||||
|
|
||||||||||
| Add to `containers.yml`: | ||||||||||
| ```yaml | ||||||||||
| - name: member-jasi | ||||||||||
| bridge: incusbr-members | ||||||||||
| cpu: 4 | ||||||||||
| memory: 4GB | ||||||||||
| disk: 5GB | ||||||||||
| ssh_port: 2225 | ||||||||||
| user: jasi | ||||||||||
| ssh_key: "ssh-ed25519 AAAAC3NzaC1lZDI1..." | ||||||||||
| ``` | ||||||||||
|
Comment on lines
+83
to
+95
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Example port conflicts with actual container entry. The example uses port 📝 Proposed fix User provides:
- Name: `jasi`
- SSH key: `ssh-ed25519 AAAAC3NzaC1lZDI1...`
-- Preferred port: `2225`
+- Preferred port: `2226`
Add to `containers.yml`:
```yaml
- name: member-jasi
bridge: incusbr-members
cpu: 4
memory: 4GB
disk: 5GB
- ssh_port: 2225
+ ssh_port: 2226
user: jasi
ssh_key: "ssh-ed25519 AAAAC3NzaC1lZDI1..."Verify each finding against the current code and only fix it if needed. In |
||||||||||
|
|
||||||||||
| Then commit and push your branch to create a pull request. | ||||||||||
|
|
||||||||||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Template naming pattern inconsistent with examples.
The template shows
name: usernamebut actual entries and the example on lines 87-95 use themember-<username>pattern. Update the template for consistency.📝 Proposed fix
Verify each finding against the current code and only fix it if needed.
In
@README.mdaround lines 37 - 46, Update the YAML template's name field to usethe member- pattern for consistency with the examples: change the
placeholder value for the name key (currently "username") to follow the
member- naming convention (e.g., "member-username") while leaving
other keys (bridge, cpu, memory, disk, ssh_port, user, ssh_key) unchanged.