An open API service indexing awesome lists of open source software.

https://github.com/jyje/claude-docker

๐Ÿง‘๐Ÿผโ€๐Ÿ”ง Claude Code Docker Image, community-powered, lightweight
https://github.com/jyje/claude-docker

agentic-workflow ai claude-code docker docker-image workflow

Last synced: 3 days ago
JSON representation

๐Ÿง‘๐Ÿผโ€๐Ÿ”ง Claude Code Docker Image, community-powered, lightweight

Awesome Lists containing this project

README

          



# jyje/claude-docker


Claude

Claude Code: ์ปค๋ฎค๋‹ˆํ‹ฐ ๋„์ปค ์ด๋ฏธ์ง€

[![release](https://github.com/jyje/claude-docker/actions/workflows/ci-main.yaml/badge.svg?branch=main)](https://github.com/jyje/claude-docker/actions/workflows/ci-main.yaml)
[![test](https://github.com/jyje/claude-docker/actions/workflows/ci-develop.yaml/badge.svg?branch=develop)](https://github.com/jyje/claude-docker/actions/workflows/ci-develop.yaml)
[![cron](https://github.com/jyje/claude-docker/actions/workflows/cron-fetch-npm.yaml/badge.svg)](https://github.com/jyje/claude-docker/actions/workflows/cron-fetch-npm.yaml)
[![GitHub Repo stars](https://img.shields.io/github/stars/jyje/claude-docker)](https://github.com/jyje/claude-docker)

[English](readme.md) / [ํ•œ๊ตญ์–ด](readme-ko.md)

โญ **์ด ํ”„๋กœ์ ํŠธ๊ฐ€ ์œ ์šฉํ•˜์…จ๋‹ค๋ฉด GitHub Star(โญ)๋ฅผ ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค!**

๐Ÿค– ์ด ๋ ˆํฌ์ง€ํ† ๋ฆฌ๋Š” ์ปค๋ฎค๋‹ˆํ‹ฐ๊ฐ€ ์ œ๊ณตํ•˜๋Š” [Claude Code](https://docs.anthropic.com/en/docs/claude-code) ๋„์ปค ์ด๋ฏธ์ง€์ž…๋‹ˆ๋‹ค. Node.js 24 ๊ธฐ๋ฐ˜์œผ๋กœ ๋นŒ๋“œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ง€์› ์•„ํ‚คํ…์ฒ˜: `linux/amd64`, `linux/arm64`.

> [!IMPORTANT]
> ์ด ๋ ˆํฌ์ง€ํ† ๋ฆฌ๋Š” Anthropic๊ณผ ์ œํœด ๊ด€๊ณ„๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. Claude Code ์‚ฌ์šฉ์ž๋ฅผ ์œ„ํ•œ ๋„์ปค ์ด๋ฏธ์ง€๋ฅผ ์ œ๊ณตํ•˜๋Š” ์ปค๋ฎค๋‹ˆํ‹ฐ ํ”„๋กœ์ ํŠธ์ž…๋‹ˆ๋‹ค. ๊ณต์‹ ์ •๋ณด๋Š” [docs.anthropic.com](https://docs.anthropic.com/en/docs/claude-code)์„ ์ฐธ์กฐํ•˜์„ธ์š”.

> [!NOTE]
> **Anthropic ๊ณต์‹ Dockerfile ๊ธฐ๋ฐ˜**
> ์ด ๋„์ปค ์ด๋ฏธ์ง€๋Š” [Anthropic ๊ณต์‹ Claude Code devcontainer Dockerfile](https://github.com/anthropics/claude-code/blob/main/.devcontainer/Dockerfile)์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋ฉฐ, Node.js 24, ์ž๋™ํ™”๋œ CI/CD ํŒŒ์ดํ”„๋ผ์ธ, ๋ฉ€ํ‹ฐ ์•„ํ‚คํ…์ฒ˜ ์ง€์› ๋“ฑ ์ปค๋ฎค๋‹ˆํ‹ฐ ์‚ฌ์šฉ์„ ์œ„ํ•œ ๊ฐœ์„ ์‚ฌํ•ญ์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

## ๐Ÿ“š ๋ฌธ์„œ

**์‹œ์ž‘ํ•˜๊ธฐ**
- [ํ•œ๊ตญ์–ด ์‹œ์ž‘ ๊ฐ€์ด๋“œ](docs/getting-started-ko.md) - ๋น ๋ฅธ ์‹œ์ž‘, ํ™˜๊ฒฝ ์„ค์ •, ๊ธฐ๋ณธ ์‚ฌ์šฉ๋ฒ•, ์ธ์ฆ, ๋น ๋ฅธ ํ…Œ์ŠคํŠธ

**๊ณ ๊ธ‰ ๊ฐ€์ด๋“œ**
- [๊ณ ๊ธ‰ ๊ฐ€์ด๋“œ](docs/advanced-guide-ko.md) - Argo Workflows, Kubernetes Jobs/CronJobs, CI/CD ํ†ตํ•ฉ

## ํ™˜๊ฒฝ ๋ณ€์ˆ˜

| ๋ณ€์ˆ˜ | ํ•„์ˆ˜ | ์„ค๋ช… |
|------|------|------|
| `ANTHROPIC_API_KEY` | ์˜ˆ | Anthropic API ํ‚ค. [console.anthropic.com](https://console.anthropic.com/)์—์„œ ๋ฐœ๊ธ‰ |
| `ANTHROPIC_BASE_URL` | ์•„๋‹ˆ์˜ค | ์ปค์Šคํ…€ API ์—”๋“œํฌ์ธํŠธ URL. ๋กœ์ปฌ ๋ชจ๋ธ(์˜ˆ: Docker Model Runner) ๋˜๋Š” ์ปค์Šคํ…€ ์—”๋“œํฌ์ธํŠธ ์‚ฌ์šฉ ์‹œ |

> [!TIP]
> Docker, ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค, API ํ‚ค ์ธ์ฆ์„ ํฌํ•จํ•œ ์ž์„ธํ•œ ์‚ฌ์šฉ ์˜ˆ์ œ๋Š” **[์‹œ์ž‘ ๊ฐ€์ด๋“œ](docs/getting-started-ko.md)**๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

## ์‚ฌ์ „ ์„ค์น˜๋œ ์œ ํ‹ธ๋ฆฌํ‹ฐ

์ด ์ด๋ฏธ์ง€๋Š” ๋‹ค์Œ ์œ ํ‹ธ๋ฆฌํ‹ฐ๊ฐ€ ์‚ฌ์ „ ์„ค์น˜๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค:

```
- @anthropic-ai/claude-code (์ตœ์‹  ๋˜๋Š” ์ง€์ •๋œ ๋ฒ„์ „)
- node 24
- npm

- git + git-delta (diff ๋ทฐ์–ด)
- zsh + powerline10k ํ…Œ๋งˆ
- fzf (ํผ์ง€ ํŒŒ์ธ๋”)
- gh (GitHub CLI)
- jq, curl, wget
- nano, vim
- iptables, ipset, iproute2 (๋„คํŠธ์›Œํฌ ์ƒŒ๋“œ๋ฐ•์Šค์šฉ)
```

## MCP (Model Context Protocol) ์—ฐ๊ฒฐ

Claude Code๋Š” [MCP](https://modelcontextprotocol.io/)๋ฅผ ํ†ตํ•ด GitHub, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค, API ๋“ฑ ์™ธ๋ถ€ ๋„๊ตฌ์™€ ๋ฐ์ดํ„ฐ ์†Œ์Šค์— ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

### ์ปจํ…Œ์ด๋„ˆ ๋‚ด๋ถ€์—์„œ MCP ์„œ๋ฒ„ ์ถ”๊ฐ€

```bash
# ์ปจํ…Œ์ด๋„ˆ ์‹œ์ž‘
docker run --rm -it \
-e ANTHROPIC_API_KEY \
-v $(pwd):/workspace \
-v claude-mcp-config:/home/node/.claude \
ghcr.io/jyje/claude-docker

# ์ปจํ…Œ์ด๋„ˆ ๋‚ด๋ถ€: MCP ์„œ๋ฒ„ ์ถ”๊ฐ€
claude mcp add --transport http github https://api.githubcopilot.com/mcp/
claude mcp add --transport http sentry https://mcp.sentry.dev/mcp
claude mcp add --transport stdio postgres -- npx -y @bytebase/dbhub --dsn "postgresql://user:pass@host:5432/db"

# ์„ค์ •๋œ ์„œ๋ฒ„ ๋ชฉ๋ก ํ™•์ธ
claude mcp list

# ์„œ๋ฒ„ ์ƒํƒœ ํ™•์ธ
/mcp
```

### .mcp.json ์„ค์ • ํŒŒ์ผ ์‚ฌ์šฉ

ํŒ€ ๊ณต์œ ์šฉ MCP ์„ค์ •์„ ์œ„ํ•ด ํ”„๋กœ์ ํŠธ ๋ฃจํŠธ์— `.mcp.json`์„ ์ƒ์„ฑํ•˜์„ธ์š”:

```json
{
"mcpServers": {
"github": {
"type": "http",
"url": "https://api.githubcopilot.com/mcp/"
},
"postgres": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@bytebase/dbhub", "--dsn", "${DATABASE_URL}"],
"env": {
"DATABASE_URL": "${DATABASE_URL}"
}
},
"filesystem": {
"type": "stdio",
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/workspace"]
}
}
}
```

๋งˆ์šดํŠธํ•˜์—ฌ ์‹คํ–‰:

```bash
docker run --rm -it \
-e ANTHROPIC_API_KEY \
-e DATABASE_URL="postgresql://user:pass@host:5432/db" \
-v $(pwd):/workspace \
-v $(pwd)/.mcp.json:/home/node/.mcp.json:ro \
ghcr.io/jyje/claude-docker
```

### ์ธ๊ธฐ MCP ์„œ๋ฒ„

| ์„œ๋ฒ„ | ๋ช…๋ น์–ด |
|------|--------|
| GitHub | `claude mcp add --transport http github https://api.githubcopilot.com/mcp/` |
| Sentry | `claude mcp add --transport http sentry https://mcp.sentry.dev/mcp` |
| PostgreSQL | `claude mcp add --transport stdio postgres -- npx -y @bytebase/dbhub --dsn "postgresql://..."` |
| Filesystem | `claude mcp add --transport stdio fs -- npx -y @modelcontextprotocol/server-filesystem /workspace` |

๋” ๋งŽ์€ MCP ์„œ๋ฒ„๋Š” [GitHub์˜ MCP Servers](https://github.com/modelcontextprotocol/servers)๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

## DevContainer ์ง€์›

์ด ๋ ˆํฌ์ง€ํ† ๋ฆฌ๋Š” VS Code Dev Containers๋ฅผ ์œ„ํ•œ `.devcontainer` ๊ตฌ์„ฑ์„ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค:

1. [Dev Containers ํ™•์žฅ](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers) ์„ค์น˜
2. ์ด ๋ ˆํฌ์ง€ํ† ๋ฆฌ ํด๋ก 
3. ํ˜ธ์ŠคํŠธ์— `ANTHROPIC_API_KEY` ํ™˜๊ฒฝ ๋ณ€์ˆ˜ ์„ค์ •
4. VS Code์—์„œ ์—ด๊ณ  "Reopen in Container" ํด๋ฆญ

devcontainer๋Š” ์ž๋™์œผ๋กœ:
- ๋„คํŠธ์›Œํฌ ์ƒŒ๋“œ๋ฐ•์Šค (๋ฐฉํ™”๋ฒฝ) ์„ค์ •
- powerline10k์™€ ํ•จ๊ป˜ zsh ๊ตฌ์„ฑ
- `/workspace`์— ์›Œํฌ์ŠคํŽ˜์ด์Šค ๋งˆ์šดํŠธ
- ๋ช…๋ น ๊ธฐ๋ก ๋ฐ Claude ์„ค์ • ์œ ์ง€

## CI ํŒŒ์ดํ”„๋ผ์ธ

์ด ๋ ˆํฌ์ง€ํ† ๋ฆฌ๋Š” ์ž๋™ํ™”๋œ CI ํŒŒ์ดํ”„๋ผ์ธ์„ ํ†ตํ•ด ๋‘ ๊ฐ€์ง€ ์ฃผ์š” ๋ฐฐํฌ ์ „๋žต์œผ๋กœ Claude Code ๋„์ปค ์ด๋ฏธ์ง€๋ฅผ ๋นŒ๋“œํ•˜๊ณ  ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค:

### `main` ๋ธŒ๋žœ์น˜ (ํ”„๋กœ๋•์…˜ ๋ฆด๋ฆฌ์ฆˆ)
- **์ž๋™ ์‹คํ–‰**: `main` ๋ธŒ๋žœ์น˜์— ์ปค๋ฐ‹๋˜๋ฉด ๋ฆด๋ฆฌ์ฆˆ ์ด๋ฏธ์ง€๊ฐ€ ์ž๋™์œผ๋กœ ๋นŒ๋“œ ๋ฐ ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค.
- **ํƒœ๊ทธ ์ „๋žต**: ํ‘œ์ค€ ๋ฒ„์ „ ํƒœ๊ทธ(์˜ˆ: `v2.0.0`)๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ๊ตฌ ๋ฒ„์ „ ํŒจ์น˜๊ฐ€ ํ˜„์žฌ ๋ฐฐํฌ๋œ ์ตœ์‹  ๋ฒ„์ „์„ ๋ฎ์–ด์“ฐ๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด, ํ˜„์žฌ ๋นŒ๋“œ ๋Œ€์ƒ์ด ์ ˆ๋Œ€์ ์ธ ์ตœ์‹  ๋ฒ„์ „์ผ ๋•Œ๋งŒ `latest` ๋ฐ `major`/`minor` ํƒœ๊ทธ๋ฅผ ์ ์šฉํ•ฉ๋‹ˆ๋‹ค.
- **๋ฆด๋ฆฌ์ฆˆ ๋…ธํŠธ**: ์ƒ์„ธํ•œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ(Changelog)๊ณผ ํ•จ๊ป˜ GitHub Release๋ฅผ ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

### `develop` ๋ธŒ๋žœ์น˜ (๊ฐœ๋ฐœ์šฉ ๋นŒ๋“œ)
- **์ž๋™ ์‹คํ–‰**: `develop` ๋ธŒ๋žœ์น˜์— ์ปค๋ฐ‹๋˜๋ฉด ํ…Œ์ŠคํŠธ์šฉ ์ด๋ฏธ์ง€๊ฐ€ ์ž๋™์œผ๋กœ ๋นŒ๋“œ ๋ฐ ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค.
- **ํƒœ๊ทธ ์ „๋žต**: ํ•ด์‹œ ์ถฉ๋Œ์„ ์™„์ „ํžˆ ์ œ๊ฑฐํ•˜๊ธฐ ์œ„ํ•ด `-dev:[20์ž๋ฆฌ SHA]` ๋ฐ `-dev:latest` ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
- **์Šคํ† ๋ฆฌ์ง€ ๊ด€๋ฆฌ**: ์Šคํ† ๋ฆฌ์ง€ ๊ณต๊ฐ„ ์ตœ์ ํ™”๋ฅผ ์œ„ํ•ด GHCR์— ๊ฐ€์žฅ ์ตœ๊ทผ์˜ ๊ฐœ๋ฐœ ์ด๋ฏธ์ง€ 20๊ฐœ๋งŒ ์œ ์ง€ํ•˜๋Š” ์ž๋™ ๊ฐ€๋น„์ง€ ์ปฌ๋ ‰์…˜(GC)์„ ๊ตฌํ˜„ํ–ˆ์Šต๋‹ˆ๋‹ค.

### ๊ณตํ†ต ๊ธฐ๋Šฅ
- **๋ฉ€ํ‹ฐ ์•„ํ‚คํ…์ฒ˜ ์ง€์›**: `linux/amd64`์™€ `linux/arm64` ์•„ํ‚คํ…์ฒ˜ ๋ชจ๋‘๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
- **์ž๋™ ์—…๋ฐ์ดํŠธ**: ํฌ๋ก  ์ž‘์—…์ด 6์‹œ๊ฐ„๋งˆ๋‹ค ์ƒˆ Claude Code ๋ฒ„์ „์„ ํ™•์ธํ•˜๊ณ  Pull Request๋ฅผ ์ž๋™ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
- **ํŒŒ์ดํ”„๋ผ์ธ ๊ฑด๋„ˆ๋›ฐ๊ธฐ**: ์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€์— `--no-ci` ํ”Œ๋ž˜๊ทธ๋ฅผ ํฌํ•จํ•˜๋ฉด ํ•ด๋‹น ์ปค๋ฐ‹์— ๋Œ€ํ•ด CI ํŒŒ์ดํ”„๋ผ์ธ ์‹คํ–‰์„ ๊ฑด๋„ˆ๋›ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

## ๊ธฐ์—ฌํ•˜๊ธฐ

ํ”„๋กœ์ ํŠธ์— ๊ธฐ์—ฌํ•˜๋Š” ๋ฐฉ๋ฒ•์€ [๊ธฐ์—ฌ ๊ฐ€์ด๋“œ๋ผ์ธ](contributing.md)์„ ์ฐธ์กฐํ•˜์„ธ์š”.

## ๋ผ์ด์„ ์Šค

์ด ํ”„๋กœ์ ํŠธ๋Š” MIT ๋ผ์ด์„ ์Šค๋กœ ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ [license.md](license.md)๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

Claude Code๋Š” [Anthropic](https://www.anthropic.com/)์˜ ์ œํ’ˆ์ž…๋‹ˆ๋‹ค. ์ด ํ”„๋กœ์ ํŠธ๋Š” Anthropic๊ณผ ์ œํœด ๊ด€๊ณ„๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.