
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
linuxserver/webtop, kasmvnc + ubuntu-kde 기반으로 생성한 Web 기반의 리눅스 데스크탑 환경입니다.
국내 사용자를 위한 한국어 설정, 유용한 기본 프로그램들이 사전 설치 및 설정되어 있습니다.
amd64(x86-64) 및 arm64(aarch64) 를 지원합니다. 멀티 아키텍처 이미지로 다운로드 하는 서버에 해당되는 아키텍처로 Pull 됩니다.
Noble (24.04) 기반으로 베이스 이미지 전환은 아직 미호환 패키지가 다수 있어, 연말경 전환 검토 예정입니다.
| Base image | Architecture |
|---|---|
| Ubuntu Jammy (22.04) | amd64 |
| Ubuntu Jammy (22.04) | arm64 |
모든 이미지는 Ubuntu KDE 기반입니다. latest 및 yymmdd 형식의 태그로 빌드됩니다.
| Tag | Description |
|---|---|
| latest | Latest build |
| yymmdd | Specific build |
아래 2개의 포트로 서비스됩니다.
지원되는 환경변수 옵션은 아래와 같습니다.
Optional environment variables
| Variable | Default | Description |
|---|---|---|
| CUSTOM_PORT | 3000 | HTTP 포트 |
| CUSTOM_HTTPS_PORT | 3001 | HTTPS 포트 |
| CUSTOM_USER | abc | HTTP Basic 인증 ID |
| PASSWORD | HTTP Basic 인증 PW (입력 시 HTTP Basic 인증 활성화) | |
| SUBFOLDER | / | Subfolder 형식으로 Reverse proxy 구성 시, 사용할 Subfolder 경로 |
| TITLE | KasmVNC Client | 브라우저 표시 제목 |
| START_DOCKER | true | 컨테이너 내부의 도커(Docker in Docker, DinD) 사용여부 |
| DRINODE | /dev/dri/renderD128 | 오픈소스 드라이버 기반 GPU 사용여부,https://www.kasmweb.com/kasmvnc/docs/master/gpu_acceleration.html참고 |
| DISABLE_IPV6 | false | IPv6 활성화 여부 |
| DOCKER_MODS | 추가 설정 가능한https://github.com/linuxserver/docker-mods항목 | |
| RESET_HOME | false | 컨테이너 재시작 시 홈 디렉토리 초기화 여부 |
| DESKTOP_ICONS | false | 바탕화면에 아이콘 배치여부 |
| TZ | Asia/Seoul | 시간대 |
| LC_ALL | ko_KR.UTF-8 | 사용 언어 (ko_KR.UTF-8 / en_US.UTF-8 등) |
| VIEW_ONLY | false | 보기전용 모드 |
| RESIZE | remote | 스케일링 설정 (off / scale / remote) |
| ENABLE_PERF_STATS | false | 성능정보 표시 |
| ENABLE_WEBRTC | false | WebRTC 사용 |
| ENABLE_WEBP | true | WebP 사용 |
| ENABLE_IME | true | IME 입력 활성화 |
| ENABLE_HIDPI | false | HiDPI 사용 |
| VIDEO_QUALITY | high | 스트리밍 품질 프리셋 (low / medium / high / extreme / lossless) |
| ANTI_ALIASING | dynamic | 안티 앨리어싱 설정 (dynamic / on / off) |
Optional run configurations
| Type | Variable | Essential | Description |
|---|---|---|---|
| Option | --privileged | ✅ | 컨테이너 내부의 도커(Docker in Docker, DinD) 사용을 위해 필요 |
| Option | --security_opt seccomp:unconfined | ✅ | 컨테이너 내부의 도커(Docker in Docker, DinD) 사용을 위해 필요 |
| Bind Mount | -v ./data:/config | ❌ | 호스트 폴더에 기본 홈 디렉토리 연결 |
| Bind Mount | -v ./docker:/var/lib/docker | ❌ | 호스트 폴더에 DinD 디렉토리 연결 |
| Bind Mount | -v /var/run/docker.sock:/var/run/docker.sock | ❌ | 호스트의 도커 제어가 필요할 경우 설정 |
| Bind Mount | -v ./certificates:/usr/local/share/ca-certificates | ❌ | 사설 인증서 등록이 필요할 경우 사용 |
| Bind Mount | -v /dev/shm:/dev/shm | ✅ | 원활한 사용을 위해 호스트의 Shared memory 공유 |
| Device | --device /dev/dri:/dev/dri | ✅ | 내부에서 GPU를 사용하기 위해 필요 |
docker-compose 기반의 샘플 코드입니다. docker cli로 사용하려면 변환 사이트를 사용하세요.
docker-compose
yaml--- version: '3.5' services: webtop: image: raindev11/webtop:latest container_name: webtop hostname: webtop restart: unless-stopped privileged: true security_opt: - seccomp:unconfined environment: - PUID=1000 - PGID=1000 - SUBFOLDER=/ - TITLE=liveLinux - RESET_HOME=true - DESKTOP_ICONS=false - DISABLE_IPV6=true # HTTP Basic Auth 사용시 ID/PW #- CUSTOM_USER=abc #- PASSWORD=abc volumes: - './data:/config' - './docker:/var/lib/docker' # 사설 인증서 등록 필요시 사용 - './certificates:/usr/local/share/ca-certificates' # 호스트 도커연동 제외 #- '/var/run/docker.sock:/var/run/docker.sock' # Shared Memory는 호스트와 연동하여 사용 - '/dev/shm:/dev/shm' ports: - 3000:3000 - 3001:3001 devices: - /dev/dri:/dev/dri networks: - private networks: private: name: private
Reverse proxy (NPM/NGiNX)
Advanced → Custom Nginx Configuration 항목에서 설정proxy_pass http://webtop:3000; 은 Nginx/NPM이 동일 네트워크로 연결된 겅우이며,
동일 네트워크가 아닌 경우 proxy_pass http://127.0.0.1:(호스트 매핑포트); 로 변경하여 적용 필요location / { proxy_http_version 1.1; proxy_set_header Host $host; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header Cookie ""; proxy_read_timeout 3600s; proxy_send_timeout 3600s; add_header 'Access-Control-Allow-Origin' '*' always; add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS'; add_header 'Access-Control-Allow-Headers' 'Authorization,Content-Type,Accept,Origin,User-Agent,DNT,Cache-Control,X-Mx-ReqToken,Keep-Alive,X-Requested-With,If-Modified-Since'; add_header 'Access-Control-Allow-Credentials' 'true'; add_header 'Cross-Origin-Embedder-Policy' 'require-corp'; add_header 'Cross-Origin-Opener-Policy' 'same-origin'; add_header 'Cross-Origin-Resource-Policy' 'same-site'; proxy_pass http://webtop:3000; proxy_buffering off; } location /websockify { proxy_http_version 1.1; proxy_set_header Host $host; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header Cookie ""; proxy_read_timeout 3600s; proxy_send_timeout 3600s; add_header 'Access-Control-Allow-Origin' '*' always; add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS'; add_header 'Access-Control-Allow-Headers' 'Authorization,Content-Type,Accept,Origin,User-Agent,DNT,Cache-Control,X-Mx-ReqToken,Keep-Alive,X-Requested-With,If-Modified-Since'; add_header 'Access-Control-Allow-Credentials' 'true'; add_header 'Cross-Origin-Embedder-Policy' 'require-corp'; add_header 'Cross-Origin-Opener-Policy' 'same-origin'; add_header 'Cross-Origin-Resource-Policy' 'same-site'; proxy_pass http://webtop:3000; proxy_buffering off; }
| 항목 | 명칭 | 초기설정 내용 |
|---|---|---|
| 브라우저 | Brave | 한글 언어팩 적용, 우클릭 차단 확장 사전설치 |
| 텍스트 편집기 | VSCode | 한글 언어팩 적용 Docker, Indent-rainbow, Typora 확장 사전설치 |
| 오피스 | LibreOffice | StopBegging 확장 사전설치 |
| 원격접속 | Remmina | 기본 설정 |
| 가상화 | Docker/compose | |
| 네트워크 | Wireshark | 기본 설정 |
| 파일 탐색기 | Double Commander | 기본 설정 |
| 압축 | Ark | |
| 동영상 뷰어 | VLC | 기본 설정 |
| 이미지 뷰어 | Gwenview | 기본 설정 |
| 화면 녹화 | OBS Studio | 기본 설정 |
| 화면 캡쳐 | Spetacle |
보안 및 어플리케이션 정기 업데이트는 업데이트는 매주 일요일 새벽 3시에 진행됩니다.
비정기 업데이트는 수시로 진행될 수 있습니다.
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务
以下是 raindev11/webtop 相关的常用 Docker 镜像,适用于 不同场景 等不同场景: