Skip to content

Latest commit

 

History

History
20 lines (14 loc) · 1.27 KB

File metadata and controls

20 lines (14 loc) · 1.27 KB

Development Workflow

This project follows an "Immutable Infrastructure" pattern for developer environments.

Container Lifecycle

Caution

Recreation: Running ./admin/deploy_update.sh will destroy and recreate all user containers. Any changes made to the system (e.g., via apt install) inside a running container will be LOST.

Persistence Strategy

Only data stored in the user's home directory (/home/<username>) is persisted. This data resides on a dedicated Sparse File Virtual Disk (/disks/<user>.img), ensuring that even if the container is destroyed, your files remain intact and accessible.

  1. System Changes: Must be committed to the dockerfile. Packages installed via apt or npm -g inside a running container will not survive a rebuild.
  2. User Data: (Code, configs, browser profiles) Stay safe on the virtual disk mount.
  3. Stability: If an environment becomes unstable, a simple deploy_update.sh resets it to a known good state while preserving user files.

Best Practices

  • Always store your git repositories and workspace configurations in your home folder.
  • Use the audit_tools.sh script after updates to ensure your required toolkit is functional.
  • Regularly use the backup command before major system-wide updates.