概要说明:
Hub 上找不到 arm64 架构的 guacamole 版多合一镜像,所以就自己构建了一个。 基于 guacamole-1.2.0 最新版构建,除了 amd64、arm32 架构之外还增加了对 arm64 架构的支持,并集成最新的内置环境相关程序。 所有基于 arm64 位的操作系统都可以使用,比如斐讯 N1……
更新日志:
- 2020-10-08,镜像常规基础更新,基于当前最新稳定版 guacamole-1.2.0
- 2020-07-24,跟随官方最新稳定版构建升级到 guacamole-1.2.0
- 2020-05-24,首次构建官方最新稳定版 guacamole-1.1.0
使用方法:
docker pull otakusay/guacamole:latest
docker run -d -p 8888:8080 --name guacamole --restart always --hostname guacamole -v guacamole_data:/config otakusay/guacamole:latest
- 默认用户:
guacadmin
- 默认密码:
guacadmin
PS:首次登录成功以后第一时间去创建一个新的管理员用户,然后用新建管理员用户再次登录,然后删除这个 guacadmin
默认用户!
必要参数:
参数分为两半,中间用英文冒号分隔,左侧代表宿主,右侧代表容器。
-p 8888:8080
– 将容器的8080端口绑定到主机上的8888端口,必填! (8888可以自行修为其他端口)-v guacamole_data/config
– 配置和数据库的存储位置,必填! (guacamole_data可以自行修改为其他路径)-e EXTENSIONS
– 有关详情,请参见下文。非必填!
更多示例:
可以使用 -e EXTENSIONS
变量来启用扩展。可以使用逗号分隔的列表(不含空格)来启用多个扩展名。
docker pull otakusay/guacamole:latest
docker run -d -p 8888:8080 --name guacamole --restart always --hostname guacamole -v guacamole_data:/config -e "EXTENSIONS=auth-ldap,auth-duo" otakusay/guacamole:latest
如果你希望 guacamole 运行在反向代理后面,则可以创建私有网络,然后给 guacamole 容器分配个子网固定 IP ,容器端口只在内网公开,然后你可以通过 Nginx 或者其他反代程序反代 guacamole 的内网 IP:8080 端口进行访问,SSL 证书也可以一并通过反代解决。
docker network create --subnet=192.168.0.0/24 mynet
docker pull otakusay/guacamole:latest
docker run -d --expose 8080 --name guacamole --network mynet --ip 192.168.0.2 --restart always --hostname guacamole -v guacamole_data:/config otakusay/guacamole:latest
--expose
这个参数意思是只在内网暴露容器端口,不对外映射。
Docker 创建私有网络并为容器设定固定 IP 的方法可以参考下面的文章:
更多扩展:
auth-ldap
– LDAP Authenticationauth-duo
– Duo two-factor authenticationauth-header
– HTTP header authenticationauth-cas
– CAS Authenticationauth-openid
– OpenID Connect authenticationauth-totp
– TOTP two-factor authenticationauth-quickconnect
– Ad-hoc connections extension
您仅应启用所需的扩展名,如果在 guacamole.properties 文件中未正确配置扩展名,则可能会阻止系统加载。有关更多详细信息,请参见官方文档。(官方文档: https://guacamole.apache.org/doc/gug/
)
PS:这些认证方式除非你很懂,否则不建议开启。如果需要了解这方面的更多知识可谷歌搜索『两步验证』了解更多。
支持架构:
docker pull otakusay/guacamole:amd64
(例如:电脑PC)docker pull otakusay/guacamole:arm
(例如:树莓派)docker pull otakusay/guacamole:arm64
(例如:斐讯N1)
PS:如果你不知道自己设备的架构,可以无脑 docker pull otakusay/guacamole:latest
系统会自动选择架构,并根据你的设备下载与之匹配的最新版镜像包。
管理你好,想请教一下,用这种方法安装的guacamole,如果更换服务器,如何备份已有的数据?难道需要重新添加一遍?
更新容器镜像时不会影响已有的用户数据,因为启动容器时增加了容器内部到主机的文件目录映射。
所以正常更新容器镜像即可,更新后一切数据都还在,不用担心自定义数据丢失。
我的意思是迁移服务器,比如我从腾讯云迁移到阿里云的机器,如何保留已经添加的机器信息?
例如:
docker run -d -p 8888:8080 --name guacamole --restart always --hostname guacamole -v /mydata:/config otakusay/guacamole:latest
搬家时,把宿主机
/mydata
目录下的数据打包备份。在新主机部署容器,然后停止容器,再用打包备份的数据覆盖新主机相同路径下的数据,最后重启容器即可。
参数详解:
-d
后台运行容器-p 8888:8080
映射宿主机8888端口到容器内8080端口--restart always
开机自启动容器-v /mydata:/config
挂载映射宿主机/mydata目录到容器内/config目录(所以备份迁移这个目录的数据即可)谢谢!guacamole升到1.3.0版本了,后期有计划更新docker吗?
这两天有时间我会考虑更新镜像的,其实这东西能用就好,不需要经常更新的。