Guacamole Docker手动部署教程
使用Docker Compose自动化部署更简单便捷,点击查看配置方法: 基于Docker Compose的Apache Guacamole部署配置
1. 拉取 Docker 镜像
首先,拉取部署所需的三个官方 Docker 镜像
docker pull guacamole/guacamole
docker pull guacamole/guacd
docker pull mysql
2. 部署 MySQL 并初始化数据库
运行 MySQL 容器:
docker run -d --name guacamole-mysql -e MYSQL_ROOT_PASSWORD=你的root密码 mysql
生成数据库初始化脚本:
Guacamole 需要特定的数据库表来工作,使用以下命令生成初始化 SQL 脚本
docker run --rm guacamole/guacamole /opt/guacamole/bin/initdb.sh --mysql > initdb.sql
将脚本复制到 MySQL 容器并初始化:
将脚本复制到容器内:
docker cp initdb.sql guacamole-mysql:/
进入 MySQL 容器:
docker exec -it guacamole-mysql bash
在容器内登录 MySQL,并创建 Guacamole 所用的数据库和用户(请使用强密码替换示例中的密码):
mysql -u root -p -- 在 MySQL 提示符下执行 CREATE DATABASE guacamole_db; CREATE USER 'guacamole_user'@'%' IDENTIFIED BY '这里替换为guacamole_user的密码'; GRANT SELECT,INSERT,UPDATE,DELETE ON guacamole_db.* TO 'guacamole_user'@'%'; FLUSH PRIVILEGES;
将初始化脚本导入数据库:
USE guacamole_db; source /initdb.sql;
完成后退出 MySQL 和容器。
3. 部署 Guacd 代理
运行 guacd
容器,它负责处理远程桌面的连接
docker run --name guacamole-guacd -d guacamole/guacd
4. 部署 Guacamole Web 应用
现在启动 Guacamole Web 应用容器,并将其连接到 guacd
和 MySQL 容器。确保下面的环境变量(如密码)与你初始化数据库时设置的一致:
docker run --name guacamole-web \ --link guacamole-guacd:guacd \ --link guacamole-mysql:mysql \ -e MYSQL_DATABASE=guacamole_db \ -e MYSQL_USER=guacamole_user \ -e MYSQL_PASSWORD=guacamole_user的密码 \ -d -p 8080:8080 guacamole/guacamole
访问与初步配置
-
在浏览器中访问
http://你的服务器IP:8080/guacamole
。 -
使用默认用户名
guacadmin
和密码guacadmin
登录。 -
重要:登录后请立即在 Guacamole 管理界面中更改默认密码,以确保安全。