linux 环境下,安装docker版Guacamole,实现远程桌面
通过以上步骤,您可以在Linux环境下快速部署Guacamole,并通过Web界面管理多种远程桌面协议。Guacamole首次启动时会自动初始化数据库。:替换环境变量中的密码(如。
·
1. 安装Docker和Docker Compose
如果尚未安装,请先安装Docker和Docker Compose:
# 安装Docker
curl -fsSL https://get.docker.com | sh
sudo systemctl start docker
sudo systemctl enable docker
# 安装Docker Compose
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
2. 创建Docker Compose文件
创建一个目录并编写 docker-compose.yml:
mkdir guacamole && cd guacamole
nano docker-compose.yml
将以下内容粘贴到文件中(使用MySQL作为数据库):
version: '3'
services:
guacd:
image: guacamole/guacd
container_name: guacd
restart: always
volumes:
- ./drive:/drive:rw
- ./record:/record:rw
networks:
- guacamole
mysql:
image: mysql:8.0
container_name: mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: your_mysql_root_password
MYSQL_DATABASE: guacamole_db
MYSQL_USER: guacamole_user
MYSQL_PASSWORD: guacamole_password
volumes:
- mysql_data:/var/lib/mysql
networks:
- guacamole
guacamole:
image: guacamole/guacamole
container_name: guacamole
restart: always
depends_on:
- guacd
- mysql
environment:
GUACD_HOSTNAME: guacd
MYSQL_HOSTNAME: mysql
MYSQL_DATABASE: guacamole_db
MYSQL_USER: guacamole_user
MYSQL_PASSWORD: guacamole_password
ports:
- "8080:8080"
networks:
- guacamole
volumes:
mysql_data:
networks:
guacamole:
注意:替换环境变量中的密码(如 your_mysql_root_password, guacamole_password)。
3. 启动Guacamole服务
docker-compose up -d
4. 初始化数据库
Guacamole首次启动时会自动初始化数据库。如果遇到问题,可手动执行:
# 下载数据库初始化脚本
docker run --rm guacamole/guacamole /opt/guacamole/bin/initdb.sh --mysql > initdb.sql
# 将脚本导入MySQL容器
docker exec -i mysql mysql -u root -pyour_mysql_root_password guacamole_db < initdb.sql
5. 访问Guacamole Web界面
浏览器访问 http://你的服务器IP:8080/guacamole,使用默认账号登录:
- 用户名:
guacadmin - 密码:
guacadmin
首次登录后请立即修改密码!
6. 配置远程桌面连接
- 登录后点击右上角 Settings。
- 选择 Connections,点击 New Connection。
- 填写连接信息:
- Name: 自定义连接名称(如
My-RDP)。 - Protocol: 选择协议(如RDP、SSH、VNC)。
- Parameters:
- RDP示例:
Hostname: 目标主机IP Port: 3389 Username: 远程主机用户名 Password: 远程主机密码
- RDP示例:
- Name: 自定义连接名称(如
7. 高级配置(可选)
- SSL加密:使用Nginx反向代理配置HTTPS。
- 持久化存储:确保数据库卷(
mysql_data)已挂载,避免数据丢失。 - 防火墙:开放端口8080(或自定义端口)。
常见问题
- 容器启动失败:检查日志
docker logs guacamole。 - 数据库连接失败:确认MySQL容器运行正常,环境变量正确。
- 无法连接远程主机:检查目标主机防火墙是否放行协议端口(如RDP的3389)。
通过以上步骤,您可以在Linux环境下快速部署Guacamole,并通过Web界面管理多种远程桌面协议。
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐

所有评论(0)