Update scratchpad with completed authentication persistence
This commit is contained in:
parent
5b3db44eaa
commit
8f637508f4
@ -19,30 +19,32 @@ Building a Docker container that runs Claude Code with full autonomous permissio
|
|||||||
## Next Steps 🎯
|
## Next Steps 🎯
|
||||||
**Phase 2 - Security & Persistence Enhancements:**
|
**Phase 2 - Security & Persistence Enhancements:**
|
||||||
|
|
||||||
### 1. Authentication Persistence (HIGH Priority) - CURRENT FOCUS
|
### 1. Authentication Persistence (HIGH Priority) - ✅ COMPLETED
|
||||||
**Problem:** Need to re-login to Claude Code every time container starts
|
**Problem:** Need to re-login to Claude Code every time container starts
|
||||||
|
|
||||||
**Research Findings:**
|
**Research Findings:**
|
||||||
- Claude Code stores auth tokens in temporary locations that get cleared
|
- Claude Code stores auth tokens in `~/.claude/.credentials.json`
|
||||||
- Known issues: #1222 (persistent auth warnings), #1676 (logout after restart)
|
- Known issues: #1222 (persistent auth warnings), #1676 (logout after restart)
|
||||||
- The devcontainer mounts `/home/node/.claude` for config persistence
|
- The devcontainer mounts `/home/node/.claude` for config persistence
|
||||||
- But auth tokens are NOT persisted properly even in devcontainer
|
- But auth tokens are NOT persisted properly even in devcontainer
|
||||||
|
|
||||||
**Implementation Plan:**
|
**Implementation Completed:**
|
||||||
1. **Mount Claude config directory from host:**
|
1. **Created persistent directory structure:**
|
||||||
- Create persistent `~/.claude-docker/claude-config` on host
|
- Host: `~/.claude-docker/claude-home`
|
||||||
- Mount to container's `~/.config/claude` or appropriate location
|
- Container: `/home/claude-user/.claude`
|
||||||
- Preserve authentication tokens between sessions
|
- Mounted with read/write permissions
|
||||||
|
|
||||||
2. **Modify startup script to:**
|
2. **Updated Docker setup:**
|
||||||
- Check for existing auth tokens on container start
|
- Created non-root user `claude-user` for better security
|
||||||
- Skip login prompt if valid tokens exist
|
- Set proper ownership and permissions
|
||||||
- Handle token refresh if needed
|
- Added volume mount for Claude home directory
|
||||||
|
|
||||||
3. **Token storage investigation:**
|
3. **Enhanced startup script:**
|
||||||
- Find where Claude Code stores auth tokens (likely ~/.config/claude or similar)
|
- Checks for existing `.credentials.json` on startup
|
||||||
- Ensure proper permissions on mounted directory
|
- Notifies user if auth exists or login needed
|
||||||
- Test token persistence across container restarts
|
- Credentials persist across container restarts
|
||||||
|
|
||||||
|
**Result:** Users now login once and authentication persists forever!
|
||||||
|
|
||||||
### 2. Network Security (High Priority) - PLANNED
|
### 2. Network Security (High Priority) - PLANNED
|
||||||
**Implementation based on devcontainer's init-firewall.sh:**
|
**Implementation based on devcontainer's init-firewall.sh:**
|
||||||
@ -104,6 +106,7 @@ Building a Docker container that runs Claude Code with full autonomous permissio
|
|||||||
- **NEW:** Adding firewall for network security
|
- **NEW:** Adding firewall for network security
|
||||||
- **NEW:** Adding shell history persistence like Claude dev container
|
- **NEW:** Adding shell history persistence like Claude dev container
|
||||||
- **NEW (2024-12-06):** Focus on auth persistence first before firewall implementation
|
- **NEW (2024-12-06):** Focus on auth persistence first before firewall implementation
|
||||||
|
- **COMPLETED (2024-12-06):** Auth persistence via mounted ~/.claude directory
|
||||||
|
|
||||||
## Notes & Context
|
## Notes & Context
|
||||||
- Repository: https://github.com/VishalJ99/claude-docker
|
- Repository: https://github.com/VishalJ99/claude-docker
|
||||||
|
Loading…
Reference in New Issue
Block a user