使用guacamole进行远程桌面连接

最近配置guacamole 鳄梨酱远程桌面连接服务,支持的协议还不少,部署直接使用docker,运行起来以后就可以访问配置,简单方便,节省了配置软件的时间,官网网址:Apache Guacamole™ 

 优点就是可以在浏览器直接访问,免去安装客户端,因为有些电脑是禁止安装软件的,所以直接使用浏览器来访问远程电脑是最方便不过的了。至于缺点我还没有开始用,只是配置起来了,用用发现了缺点再说吧。

部署步骤:

1.拉取Guacamole服务器、Guacamole客户端和MySQL的Docker镜像:

docker pull guacamole/guacamole
docker pull guacamole/guacd
docker pull mysql/mysql-server

2.当把三个镜像都下载下来后,创建数据库初始化脚本以创建用于验证身份的数据表:

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

3、理论上这里也需要创建mysql的容器,因为我有一个mysql的容器,所以直接使用了,重命名并将initdb.sql移动到MySQL容器中,后续就能通过这个生成表:

docker cp initdb.sql mysqltest:/guac_db.sql

4.在MySQL的Docker容器中打开bash终端:

docker exec -it mysqltest bash

5.使用一次性密码登录。如下所示:

mysql -u root -p

6.创建数据库,以及创建一个新的数据库和用户

CREATE DATABASE guacamole_db;
CREATE USER ‘guacamole_user’@’%’ IDENTIFIED BY ‘guacamole_user_password’;
GRANT SELECT,INSERT,UPDATE,DELETE ON guacamole_db.* TO ‘guacamole_user’@’%’;
FLUSH PRIVILEGES;

7.最后,输入quit退出即可

8.在bash终端中,使用初始化脚本为新数据库创建数据表:

cat guac_db.sql | mysql -u root -p guacamole_db

到这里,数据库的操作其实都完成了,但是我们还是小心为上。再验证数据表是否已成功添加。如果guacamole数据库中不存在新建的表,请再次确认之前的步骤均已正确执行。

连接数据库
mysql -u root -p
选择数据库
USE guacamole_db;
查看所有表
SHOW TABLES;
如果正确无误的话,你看到的应该和我的差不多。

在浏览器中访问Guacamole

1.在Docker中启动guacd:

docker run --name myguacd -d guacamole/guacd

2.连接容器,以便Guacamole验证存储在MySQL数据库中的凭证:

docker run --name myguacamole --link myguacd:guacd --link mysq:mysql -e MYSQL_DATABASE=guacamole_db -e MYSQL_USER=guacamole_user -e MYSQL_PASSWORD=guacamole_user_password -d -p 0.0.0.0:8080:8080 guacamole/guacamole

这里需要注意一下,上面命令关键信息不要用单引号(比如数据库名称,用户名、密码等),不知道为啥,单引号引用后会造成连接数据库连接失败。。。

因为需要三个容器联动,保险起见,我们还是再检查一下
可通过以下命令查看所有正在运行的Docker容器:

docker ps

  可以看到myguacamole、myguacd和mysqltest等三个容器都在后台安稳的跑着

3.请在浏览器中访问localhost:8080/guacamole/。默认的登录账户是guacadmin,默认登录密码guacadmin。登录后应尽快修改登录账户及密码。当然,如果你不是配置在本地,那你就把localhost换成对应的ip地址即可。

原文地址:https://www.cnblogs.com/oceanwang/p/14028969.html