# docker-headless **Repository Path**: jqmtony/docker-headless ## Basic Information - **Project Name**: docker-headless - **Description**: Docker云桌面, 远程办公/开发运维 (RDP+noVNC+SSH) - **Primary Language**: Shell - **License**: Apache-2.0 - **Default Branch**: dev - **Homepage**: https://github.com/infrastlabs/docker-headless - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 13 - **Created**: 2022-08-08 - **Last Updated**: 2022-08-08 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Docker云桌面(docker-healess) [![Docker Image Size](https://img.shields.io/docker/image-size/infrastlabs/docker-headless/slim)](https://hub.docker.com/r/infrastlabs/docker-headless/tags) [![Docker Image Size](https://img.shields.io/docker/image-size/infrastlabs/docker-headless/latest)](https://hub.docker.com/r/infrastlabs/docker-headless/tags) [![Docker Image Size](https://img.shields.io/docker/image-size/infrastlabs/docker-headless/full)](https://hub.docker.com/r/infrastlabs/docker-headless/tags) [![Docker Pulls](https://img.shields.io/docker/pulls/infrastlabs/docker-headless.svg)](https://hub.docker.com/r/infrastlabs/docker-headless) [![Last commit](https://img.shields.io/github/last-commit/infrastlabs/docker-headless.svg)](https://www.github.com/infrastlabs/docker-headless) [![GitHub issues](https://img.shields.io/github/issues/infrastlabs/docker-headless.svg)](https://www.github.com/infrastlabs/docker-headless/issues) 开源Docker的远程开发/办公运维的桌面环境 (Debian+XRDP/NOVNC+XFCE4) - 支持双屏显示,远程声音 - SSH连接,RDP远程,WEB浏览器访问(novnc) - 多语言本土化,中文输入法(五笔/拼音) - 桌面:Xfce4, Mate, Fluxbox, ..(默认: xfce4) - 发行版:Debian9/10/11, Ubuntu1804/2004, .. (默认: debian9) - 精简小巧 `丐版: 95M(无音频面板)`, `豪华版: 167M(latest默认,无本土化)`, `旗舰版: 287M` ## 快速开始 `docker run -it --rm --shm-size 1g --net=host infrastlabs/docker-headless` -- | 连接 | 密码 | 只读密码 --- | --- | --- | --- noVnc | http://192.168.0.x:10081 | `headless` | `View123` Audio | http://192.168.0.x:10082 | - | - RDP | 192.168.0.x:10089 | `headless` | - SSH | ssh -p 10022 headless@192.168.0.x | `headless` | - **(0)源码目录** - [deb9: 基于Debian的版本(xfce定制:体积小,稳定)](./deb9/src/) - [mint: 基于Ubuntu的新版(xfce定制:Xfce4.16, 套用Mint皮肤)](./mint/src/) - [ubuntu: Ubuntu基础版(极简:ubt-v3,slim版含音频+fluxbox)](./ubuntu/src/) - [desktop: Ubuntu基础版+多桌面(通用:Gnome,Plasma,Cinnamon,Mate,Xfce4))](./desktop/src/) **(1)密码修改**: 生产禁用默认密码,初始后请修改!! ```bash # 动态修改密码: SSH_PASS=xxx VNC_PASS=xxx2 VNC_PASS_RO=xxx3 echo "headless:$SSH_PASS" |sudo chpasswd echo -e "$VNC_PASS\n$VNC_PASS\ny\n$VNC_PASS_RO\n$VNC_PASS_RO" |sudo vncpasswd /etc/xrdp/vnc_pass; sudo chmod 644 /etc/xrdp/vnc_pass ``` **(2)使用帮助**: - [云桌面功能简介](./_doc/mannual/01-CloudDesktop.md) - [Next TODO](./_doc/mannual/b0-todo.md) - [1.如何设置为中文或其它语言?](./_doc/mannual/b1-locale.md) - [2.双屏连接,远程剪切板、音频如何使用?](./_doc/mannual/b2-rdp.md) - [3.如何WEB访问远程桌面?](./_doc/mannual/b3-vnc.md) - [4.中文输入法、截图软件使用说明](./_doc/mannual/b4-apps.md) - [5.音乐播放器及远程音频相关说明](./_doc/mannual/b5-audio.md) - [6.如何使用Ubuntu, Mate,KDE等其它桌面](./_doc/mannual/b6-desktop.md) (多桌面,网关模式) - [Detail明细说明](./detail.md) (快捷键、环境变量、系统应用) ![](https://gitee.com/infrastlabs/docker-headless/raw/dev/_doc/mannual/res/01rdp-double-screen.png) **(3)生产部署指引**: - [Windows虚拟机部署:](./_doc/deploy/win-vbox/README.md) 采用barge-os迷你容器系统, --net=host 采用虚机IP - [Linux服务器部署:](./_doc/deploy/fat-docker/README.md) 容器使用macvlan网络,分配专用IP,建议安装lxcfs - [K8S内部署:](./_doc/deploy/k8s-headless/README.md) Deployment+Service ## 使用示例 中文版快速体验: `docker run -it --rm --shm-size 1g -e VNC_OFFSET=20 -e L=zh_CN --net=host infrastlabs/docker-headless:full`, 推荐[docker-compose.yml](./docker-compose.yml) **(1)Dev开发环境搭建** (java, golang, nodejs) ```bash # JAVA sudo apt -y install openjdk-8-jdk openjdk-8-source && sudo apt -y install maven # GO goVer=go1.17.8 #go1.16.15 #go1.13.15 wget https://studygolang.com/dl/golang/$goVer.linux-amd64.tar.gz tar -zxf $goVer.linux-amd64.tar.gz; mv go $goVer.linux-amd64 rm -f godev; ln -s $goVer.linux-amd64 godev #link godev # NODE wget https://npm.taobao.org/mirrors/node/v14.20.0/node-v14.20.0-linux-x64.tar.xz xz -d node-v14.20.0-linux-x64.tar.xz #tar.xz消失 tar -xvf node-v14.20.0-linux-x64.tar cat >> /etc/profile <