convert-to-docker
- Repo stars 0
- Author repo nano-core
Convert to Docker (Current Runtime Policy)
This repository now supports two runtime modes:
docker(preferred/default)host(advanced, explicit opt-in)
This skill enforces Docker-first configuration and verifies the runtime end-to-end.
1. Verify Docker Is Installed and Running
docker --version
docker info >/dev/null && echo "Docker ready" || echo "Docker not ready"
If Docker is missing:
- macOS: install Docker Desktop from https://www.docker.com/products/docker-desktop/
- Linux:
curl -fsSL https://get.docker.com | sh && sudo systemctl start docker
2. Set Docker Runtime Defaults
Update .env so Docker is selected and host-mode overrides are removed:
# ensure runtime is docker-first auto mode
if grep -q '^CONTAINER_RUNTIME=' .env 2>/dev/null; then
sed -i.bak 's/^CONTAINER_RUNTIME=.*/CONTAINER_RUNTIME=auto/' .env
else
echo 'CONTAINER_RUNTIME=auto' >> .env
fi
# remove host runtime opt-ins if present
sed -i.bak '/^FFT_NANO_ALLOW_HOST_RUNTIME=/d' .env
sed -i.bak '/^FFT_NANO_ALLOW_HOST_RUNTIME_IN_PROD=/d' .env
3. Build Runtime Artifacts
./container/build.sh
npm run build
4. Verify Agent Runtime
echo '{}' | docker run -i --entrypoint /bin/echo fft_nano-agent:latest "Container OK"
5. Verify Setup Path
Run the project setup checker (Docker path):
bash scripts/setup.sh
Expected behavior:
- Detects Docker runtime
- Builds/uses Docker image
- Passes runtime smoke checks
6. Restart Service
launchctl kickstart -k gui/$(id -u)/com.fft_nano
Notes
- Do not set
CONTAINER_RUNTIME=hostunless explicitly requested. - Host mode is intentionally gated by
FFT_NANO_ALLOW_HOST_RUNTIME=1. - Docker is the supported default for parity and operational consistency.
- Fluxly category
- DevOps
- Author-declared agents
- No explicit declaration found; this is not inferred or tested compatibility
- Static check
- 83 / 100 · heuristic scan, not runtime safety proof
- Author / version / license
- @0-CYBERDYNE-SYSTEMS-0 · no license declared
- Fluxly token estimate
- Lean
- Fluxly setup estimate
- Guided setup
- External API key
- No requirement detected
- Detected OS requirements
- macOS · Linux · Docker
- Runtime requirements
- Docker
- Detected file/system behavior
-
- Read-only
- Write / modify
- Env read
- Detected network behavior
- External requests
- Install commands
- None (reference only)
Profile is derived at build time from SKILL.md and install vectors. Subject to drift from author intent.
Heads up: 未限定 allowed-tools,默认拥有全部工具权限。; 检出高风险片段:pipe_curl_to_shell
The current SKILL.md does not define a fixed output example. If Docker is missing: macOS: install Docker Desktop from https://www.docker.com/products/docker-desktop/ Linux: curl -fsSL https://get.docker.com | sh && sudo systemctl start docker
Update .env so Docker is selected and host-mode overrides are removed:
3. Build Runtime Artifacts
4. Verify Agent Runtime
Run the project setup checker (Docker path): Expected behavior: Detects Docker runtime
6. Restart Service
# Convert to Docker (Current Runtime Policy)
This repository now supports two runtime modes:
- `docker` (preferred/default)
- `host` (advanced, explicit opt-in)
This skill enforces Docker-first configuration and verifies the runtime end-to-end.
## 1. Verify Docker Is Installed and Running
```bash
docker --version
docker info >/dev/null && echo "Docker ready" || echo "Docker not ready"
```
If Docker is missing:
- macOS: install Docker Desktop from https://www.docker.com/products/docker-desktop/
- Linux: `curl -fsSL https://get.docker.com | sh && sudo systemctl start docker`
## 2. Set Docker Runtime Defaults
Update `.env` so Docker is selected and host-mode overrides are removed:
```bash
# ensure runtime is docker-first auto mode
if grep -q '^CONTAINER_RUNTIME=' .env 2>/dev/null; then
sed -i.bak 's/^CONTAINER_RUNTIME=.*/CONTAINER_RUNTIME=auto/' .env
else
echo 'CONTAINER_RUNTIME=auto' >> .env
fi
# remove host runtime opt-ins if present
sed -i.bak '/^FFT_NANO_ALLOW_HOST_RUNTIME=/d' .env
sed -i.bak '/^FFT_NANO_ALLOW_HOST_RUNTIME_IN_PROD=/d' .env
```
## 3. Build Runtime Artifacts
```bash
./container/build.sh
npm run build
```
## 4. Verify Agent Runtime
```bash
echo '{}' | docker run -i --entrypoint /bin/echo fft_nano-agent:latest "Container OK"
```
## 5. Verify Setup Path
Run the project setup checker (Docker path):
```bash
bash scripts/setup.sh
```
Expected behavior:
- Detects Docker runtime
- Builds/uses Docker image
- Passes runtime smoke checks
## 6. Restart Service
```bash
launchctl kickstart -k gui/$(id -u)/com.fft_nano
```
## Notes
- Do not set `CONTAINER_RUNTIME=host` unless explicitly requested.
- Host mode is intentionally gated by `FFT_NANO_ALLOW_HOST_RUNTIME=1`.
- Docker is the supported default for parity and operational consistency. Author text anchors workflow facts; Fluxly only indexes current sections, terms, files, and commands.
sections -> 1. Verify Docker Is Installed and Running → 2. Set Docker Runtime Defaults → 3. Build Runtime Artifacts → 4. Verify Agent Runtime → 5. Verify Setup Path → 6. Restart Service
terms -> This skill enforces Docker-first configuration and verifies the runtime end-to-end. · - Do not set CONTAINERRUNTIME=host unless explicitly requested.
files/cmd -> docker · host · curl -fsSL https://get.docker.com | sh && sudo systemctl start docker · .env · CONTAINERRUNTIME=host · FFTNANOALLOWHOSTRUNTIME=1
body sha256 -> ccac0878b5e5
Decide Fit First
Design Intent
How To Use It
Boundaries And Review