使用Docker部署Guacamole


Apache Guacamole 是一个无客户端的远程桌面网关。它支持标准协议,如 VNC、RDP 和 SSH,甚至还支持k8s、telnet连接。它可以在任何有网络的地方连接上你的服务器和Windows主机。可以同时连接多个终端,并且能够无缝切换。


部署教程


安装docker

首先需要安装Docker,使用官方一键安装脚本部署或者在线安装,已安装的直接忽略


yum install docker-ce


systemctl start docker.service 


systemctl enable docker.service 


拉取镜像

docker pull guacamole/guacamole

docker pull  guacamole/guacd

docker pull mysql

 查看镜像


docker image ls



部署mysql

运行docker容器


docker run  -d --name mysql -e MYSQL_ROOT_PASSWORD=guacamole mysql

Guacamole程序不会自动初始化数据库,运行MySQL之后需要手动初始化数据库,而Guacamole提供了数据库文件,只需要生成导入就可以了。

生成数据库文件:


docker run --rm guacamole/guacamole /opt/guacamole/bin/initdb.sh --mysql > initdb.sql

这一步完成后当前目录下会生成一个initdb.sql的文件,将它复制到MySQL容器内


docker cp initdb.sql mysql:/

复制完成之后进入MySQL容器初始化数据库


# 进入MySQL容器:

docker exec -it mysql bash

 

# 在容器内运行,进入数据库

 mysql -uroot -psim

 

# 创建一个数据库:

mysql > create database guac;

 

# 选择数据库:

mysql > use guac;

 

# 导入数据:

mysql > source /initdb.sql

至此,完成了数据库初始化


部署Guacd

Guacd是Apache Guacamole网络应用程序使用的本地服务器端代理,运行Guacd:


docker run --name guacd -d guacamole/guacd

部署Guacdmole

运行Guacdmole:


docker run --name guacamole --link guacd:guacd \

    --link mysql:mysql         \

    -e MYSQL_DATABASE=guac \

    -e MYSQL_USER=root    \

    -e MYSQL_PASSWORD=guacamole \

    -d -p 9090:8080 guacamole/guacamole

运行起来后大概初始化十秒钟,在浏览器打开 http://ip:9090/guacamole



默认账号密码均为:guacadmin


添加session

打开settings




然后进入



添加相应的信息




就可以了点击相应的标签进入界面了


传说中guacamole的RDP支持设备重定向功能,经实测,设备重定向功能和mstc的设备本地资源不是一回事儿,mstc中的本地资源是可以将使用mstc的计算机上的资源映射到远程虚拟机上,而guacamole的RDP的设备重定向仅仅是将guacamole server上的目录映射到虚拟机上,如下图:




这里“虚拟盘路径”实际上是guacamole服务器上的一个目录,

实际效果如下图所示


————————————————


                            版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

                        

原文链接:https://blog.csdn.net/weixin_48227918/article/details/132632049


标签: none

添加新评论