基于Docker Compose的Apache Guacamole部署配置
Apache Guacamole是一款基于HTML5的无客户端远程桌面网关,支持VNC/RDP/SSH协议,用户通过浏览器即可访问远程计算机。通过Docker能够快速的部署到服务,以下是完整的 docker-compose.yml 文件内容(若想手动配置可点“Guacamole Docker手动部署教程”):
version: '3.8'
services:
guacamole:
image: guacamole/guacamole:latest
container_name: guacamole-web
restart: unless-stopped
extra_hosts:
- host.docker.internal:host-gateway #配置特殊域名,可以让容器使用host.docker.internal访问宿主机
environment:
GUACD_HOSTNAME: guacd
MYSQL_HOSTNAME: mysql
MYSQL_DATABASE: guacamole_db
MYSQL_USER: guacamole_user
MYSQL_PASSWORD: your_secure_password_here #改连接MYSQL数据库的密码
ports:
- "8080:8080"
volumes:
- guacamole_extensions:/opt/guacamole/extensions
depends_on:
- guacd
- mysql
networks:
- guacamole-network
guacd:
image: guacamole/guacd:latest
container_name: guacamole-guacd
restart: unless-stopped
extra_hosts:
- host.docker.internal:host-gateway #配置特殊域名,可以让容器使用host.docker.internal访问宿主机
networks:
- guacamole-network
mysql:
image: mysql:8.0
container_name: guacamole-mysql
restart: unless-stopped
extra_hosts:
- host.docker.internal:host-gateway #配置特殊域名,可以让容器使用host.docker.internal访问宿主机
environment:
MYSQL_ROOT_PASSWORD: your_root_password_here #改成MYSQL的root用户的密码
MYSQL_DATABASE: guacamole_db
MYSQL_USER: guacamole_user
MYSQL_PASSWORD: your_secure_password_here #改连接MYSQL数据库的密码
volumes:
- mysql_data:/var/lib/mysql
- ./initdb.sql:/docker-entrypoint-initdb.d/initdb.sql:ro
networks:
- guacamole-network
volumes:
mysql_data:
guacamole_extensions:
guacamole_lib:
networks:
guacamole-network:
driver: bridge
使用方法:
1、生成数据库初始化脚本:
在保存 docker-compose.yml 的目录中,执行以下命令生成数据库初始化脚本:
docker run --rm guacamole/guacamole /opt/guacamole/bin/initdb.sh --mysql > initdb.sql
2、修改默认密码:
使用文本编辑器打开 docker-compose.yml 文件,将其中所有的 your_secure_password_here 和 your_root_password_here 替换为强密码。
3、启动服务:
执行以下命令启动所有服务:
docker-compose up -d
4、访问Guacamole:
服务启动后,通过浏览器访问 http://你的服务器IP:8080/guacamole,使用默认账号 guacadmin 和密码 guacadmin 登录。请务必在首次登录后立即修改默认密码
评论区
暂时没有评论。