Skip to content

feat: add Docker deployment support#71

Open
LeoCeasar wants to merge 1 commit intoringhyacinth:masterfrom
LeoCeasar:feat/docker-deployment
Open

feat: add Docker deployment support#71
LeoCeasar wants to merge 1 commit intoringhyacinth:masterfrom
LeoCeasar:feat/docker-deployment

Conversation

@LeoCeasar
Copy link

Summary

  • Add Dockerfile and docker-compose.yml for containerized deployment
  • Add docker-entrypoint.sh to auto-initialize state.json and join-keys.json on first run
  • Add STAR_OFFICE_DATA_DIR / STAR_OFFICE_MEMORY_DIR env var support in app.py so runtime JSON files are separated from the image via volume mount
  • Update .env.example with MEMORY_HOST_PATH for Docker usage
  • Update README.md with Docker deployment section
  • Add CLAUDE.md with project guidance for Claude Code

Backward compatible: without env vars, DATA_DIR falls back to ROOT_DIR, so existing python3 app.py usage is unchanged.

Test plan

  • docker compose up -d --build builds and starts successfully
  • http://127.0.0.1:19000 loads the office UI
  • POST /set_state via curl updates agent state correctly
  • Container restart preserves state.json and join-keys.json in ./data/
  • Running python3 app.py directly (without Docker) still works as before

🤖 Generated with Claude Code

- Add Dockerfile and docker-compose.yml for containerized deployment
- Add docker-entrypoint.sh to auto-initialize state/join-keys on first run
- Add STAR_OFFICE_DATA_DIR and STAR_OFFICE_MEMORY_DIR env var support in
  app.py so runtime JSON files can be separated from the image via volume mount
- Update .env.example with MEMORY_HOST_PATH for Docker usage
- Update .gitignore to exclude data/ volume directory
- Add .dockerignore to keep image lean
- Update README with Docker deployment section
- Add CLAUDE.md with project guidance for Claude Code
- Add design doc: docs/plans/2026-03-09-docker-deployment-design.md

Backward compatible: without env vars, DATA_DIR falls back to ROOT_DIR
so existing python3 app.py usage is unchanged.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant