基于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 登录。请务必在首次登录后立即修改默认密码
浙公网安备 33010602011771号