Block a user
agent-stack (latest)
Published 2026-01-11 22:10:47 +00:00 by oussamadouhou
Installation
docker pull git.app.flexinit.nl/oussamadouhou/agent-stack:latestsha256:7732589d8a2998d86fdabfaa3ad340337bc8e066f65cf96aa470a438045b6217
Image Layers
| # debian.sh --arch 'amd64' out/ 'trixie' '@1765152000' |
| COPY docker-entrypoint.sh /usr/local/bin # buildkit |
| COPY /usr/local/bin/bun /usr/local/bin/bun # buildkit |
| RUN /bin/sh -c mkdir -p /usr/local/bun-node-fallback-bin && ln -s /usr/local/bin/bun /usr/local/bun-node-fallback-bin/node # buildkit |
| ENV PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/bun-node-fallback-bin |
| ARG BUN_RUNTIME_TRANSPILER_CACHE_PATH=0 |
| ENV BUN_RUNTIME_TRANSPILER_CACHE_PATH=0 |
| ARG BUN_INSTALL_BIN=/usr/local/bin |
| ENV BUN_INSTALL_BIN=/usr/local/bin |
| RUN |2 BUN_RUNTIME_TRANSPILER_CACHE_PATH=0 BUN_INSTALL_BIN=/usr/local/bin /bin/sh -c groupadd bun --gid 1000 && useradd bun --uid 1000 --gid bun --shell /bin/sh --create-home && ln -s /usr/local/bin/bun /usr/local/bin/bunx && which bun && which bunx && bun --version # buildkit |
| WORKDIR /home/bun/app |
| ENTRYPOINT ["/usr/local/bin/docker-entrypoint.sh"] |
| CMD ["/usr/local/bin/bun"] |
| LABEL role=leader |
| LABEL description=The orchestrator of the agent ecosystem - multi-stage build |
| RUN /bin/sh -c apt-get update && apt-get install -y --no-install-recommends bash less curl jq tree ca-certificates ripgrep ncurses-base ncurses-term locales && rm -rf /var/lib/apt/lists/* && sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen && locale-gen # buildkit |
| ENV BUN_INSTALL=/root/.bun |
| ENV PATH=/root/.bun/bin:/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/bun-node-fallback-bin |
| COPY /root/.bun /root/.bun # buildkit |
| COPY /usr/local/bin/yq /usr/local/bin/yq # buildkit |
| COPY /usr/local/bin/sg /usr/local/bin/sg # buildkit |
| COPY /usr/local/bin/opencode /usr/local/bin/opencode # buildkit |
| COPY /usr/local/bin/ast-grep /usr/local/bin/ast-grep # buildkit |
| WORKDIR /workspace |
| RUN /bin/sh -c mkdir -p /shared/config /shared/claude /shared/skills /shared/commands /shared/agents /data/artifacts /data/reports /data/logs # buildkit |
| ENV XDG_CONFIG_HOME=/shared/config |
| ENV HOME=/root |
| ENV NODE_ENV=development |
| ENV OH_MY_OPENCODE_ENABLED=true |
| ENV USAGE_LOGGING_ENABLED=true |
| ENV LOG_INGEST_URL=http://ai-stack-log-ingest:3000/ingest |
| ENV METRICS_PORT=9090 |
| ENV TERM=xterm-256color |
| ENV COLORTERM=truecolor |
| ENV LANG=en_US.UTF-8 |
| ENV LC_ALL=en_US.UTF-8 |
| RUN /bin/sh -c echo "alias opencode='opencode attach http://localhost:8080'" >> /root/.bashrc # buildkit |
| COPY docker/shared-config/ /shared/config/ # buildkit |
| SHELL [/bin/bash -c] |
| RUN /bin/bash -c echo "=== DEBUG: Final Plugin Verification ===" && echo "OpenCode location:" && which opencode && echo "OpenCode version:" && opencode --version && echo "ripgrep version:" && rg --version | head -1 && echo "ast-grep version:" && sg --version && echo "Configuration check (XDG_CONFIG_HOME/opencode/):" && cat /shared/config/opencode/opencode.jsonc | jq '.plugin' 2>/dev/null || echo "Config not readable" && echo "oh-my-opencode config:" && cat /shared/config/opencode/oh-my-opencode.json | jq '.name' 2>/dev/null || echo "oh-my-opencode config not readable" && echo "Plugin directory check:" && ls -la /shared/config/opencode/ 2>/dev/null || echo "Config dir not accessible" && echo "Testing basic OpenCode functionality:" && timeout 5 opencode --help >/dev/null 2>&1 && echo "OpenCode CLI working" || echo "OpenCode CLI issue" && echo "=== TUI Support Verification ===" && echo "TERM=$TERM" && echo "COLORTERM=$COLORTERM" && echo "LANG=$LANG" && tput colors 2>/dev/null && echo "Colors: $(tput colors)" || echo "tput colors check skipped" && echo "Terminfo: $(ls /usr/share/terminfo/x/xterm* 2>/dev/null | wc -l) xterm entries" && echo "=== DEBUG: Verification complete ===" # buildkit |
| RUN /bin/bash -c printf '%s\n' '#!/bin/bash' 'set -e' '' '# Start metrics exporter if available' 'if [ -f /shared/config/metrics-exporter.ts ]; then' ' /root/.bun/bin/bun run /shared/config/metrics-exporter.ts &' ' echo "Metrics exporter started on port ${METRICS_PORT:-9090}"' 'fi' '' '# Start OpenCode server' 'exec /usr/local/bin/opencode serve --hostname 0.0.0.0 --port 8080 --mdns --print-logs' > /usr/local/bin/start-opencode.sh && chmod +x /usr/local/bin/start-opencode.sh && echo "=== Validating startup script ===" && bash -n /usr/local/bin/start-opencode.sh && echo "Startup script syntax: OK" && cat /usr/local/bin/start-opencode.sh # buildkit |
| HEALTHCHECK &{["CMD-SHELL" "curl -f http://localhost:8080/ || exit 1"] "30s" "10s" "40s" "0s" '\x03'} |
| EXPOSE map[8080/tcp:{} 9090/tcp:{}] |
| CMD ["/usr/local/bin/start-opencode.sh"] |
Labels
| Key | Value |
|---|---|
| description | The orchestrator of the agent ecosystem - multi-stage build |
| org.opencontainers.image.created | 2026-01-10T21:46:26.045Z |
| org.opencontainers.image.description | |
| org.opencontainers.image.licenses | |
| org.opencontainers.image.revision | 487c339dd99cf2642f81efe2605f31524107ed5a |
| org.opencontainers.image.source | https://git.app.flexinit.nl/flexinit/agent-stack |
| org.opencontainers.image.title | agent-stack |
| org.opencontainers.image.url | https://git.app.flexinit.nl/flexinit/agent-stack |
| org.opencontainers.image.version | latest |
| role | leader |