docs(setup): add Debian 13 dev-VM setup procedure + scripts + devcontainer
CI / commits (pull_request) Successful in 2m52s
CI / check (pull_request) Successful in 3m3s
CI / scan (pull_request) Successful in 3m11s
CI / a11y (pull_request) Successful in 3m5s
Docs site / build (pull_request) Successful in 3m10s
CI / perf (pull_request) Successful in 6m53s
CI / commits (pull_request) Successful in 2m52s
CI / check (pull_request) Successful in 3m3s
CI / scan (pull_request) Successful in 3m11s
CI / a11y (pull_request) Successful in 3m5s
Docs site / build (pull_request) Successful in 3m10s
CI / perf (pull_request) Successful in 6m53s
New procedure in docs/setup/01-dev-debian-vm-setup.md targeting the new dev VM (10.100.201.21, Debian 13) that replaces the WSL workflow. The existing setup files are renumbered (01->02, 02->03, 03->04) to free prefix 01 for the default flow. 10 modular idempotent scripts under docs/setup/scripts/ install the stack: zsh + Oh My Zsh + Powerlevel10k + plugins, modern CLI tooling (bat, eza, fd-find, ripgrep, fzf, zoxide, ncdu, keychain + dev extras), nvm + Node from .nvmrc + corepack + pnpm, Docker CE + compose plugin, inotify watches + swap + hostname tuning, best-effort UFW + sshd hardening that probes-before-applying, and notes/aliases.zsh + notes/gitconfig.txt installation. A systemd template (apf-portal-infra@.service) auto-starts the local dev infra stack at boot per user. .devcontainer/ ships a VSCode Dev Container spec pinning Node 24 and attaching to the host's apf-portal-dev Compose network so postgres / redis / otel resolve by DNS from inside the container. initializeCommand fails fast if the infra hasn't been brought up yet. CLAUDE.md Environment conventions documents the two envs (local + development) plus the hybrid sub-mode (workstation IDE + VM infra via SSH LocalForward) and the two IDE flows (Remote-SSH + Devcontainer). Adjacent follow-ups (not in this PR): preview infra on the GitLab VM (10.100.201.10), GitLab Runner migration alongside the Gitea -> GitLab cutover, private dotfiles repo.
This commit is contained in:
@@ -0,0 +1,100 @@
|
||||
# ⚙️ Web dev stack (Node + pnpm + tooling)
|
||||
|
||||
## Goal
|
||||
|
||||
Install a modern, reproducible stack.
|
||||
|
||||
---
|
||||
|
||||
## 1) Install Node via nvm
|
||||
|
||||
```bash
|
||||
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/master/install.sh | bash
|
||||
source ~/.zshrc
|
||||
```
|
||||
|
||||
Install Node LTS:
|
||||
|
||||
```bash
|
||||
nvm install --lts
|
||||
nvm alias default 'lts/*'
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 2) Activate pnpm
|
||||
|
||||
```bash
|
||||
corepack enable
|
||||
corepack prepare pnpm@latest --activate
|
||||
pnpm setup
|
||||
exec zsh
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 3) Working tree
|
||||
|
||||
Create a dev folder:
|
||||
|
||||
```bash
|
||||
mkdir -p ~/dev
|
||||
cd ~/dev
|
||||
```
|
||||
|
||||
⚠️ Do not work inside `/mnt/c` (slow I/O).
|
||||
|
||||
---
|
||||
|
||||
## 4) Conventions
|
||||
|
||||
- ❌ No global Angular install
|
||||
- ✅ Use `pnpm dlx`
|
||||
- ✅ Versions pinned per project
|
||||
|
||||
---
|
||||
|
||||
## 5) Useful commands
|
||||
|
||||
```bash
|
||||
pnpm install
|
||||
pnpm run dev
|
||||
pnpm run build
|
||||
pnpm run test
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 6) VS Code
|
||||
|
||||
Recommended extensions:
|
||||
|
||||
- WSL
|
||||
- Angular Language Service
|
||||
- ESLint
|
||||
- Prettier
|
||||
- GitLens
|
||||
|
||||
---
|
||||
|
||||
## 7) Docker
|
||||
|
||||
Install Docker Desktop (Windows).
|
||||
|
||||
Enable:
|
||||
|
||||
- Settings → WSL Integration → Debian
|
||||
|
||||
Test:
|
||||
|
||||
```bash
|
||||
docker ps
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Result
|
||||
|
||||
- Stable environment
|
||||
- Clean version management
|
||||
- Team-compatible
|
||||
Reference in New Issue
Block a user