背景
Apache Guacamole 是一种无客户端或插件的远程桌面网关。它支持多个标准协议,如 VNC、RDP 和 SSH等。记录下部署过程。
步骤
1, 安装docker desktop
choco install docker-desktop -y
注:
若windows 11还未安装wsl,则需要先安装它。可参考:安装 WSL | Microsoft Learn
2, 配置docker镜像源,并拉取docker 镜像
配置docker镜像源可参考:2024最新 Docker 国内可用镜像源仓库地址
docker pull guacamole/guacamole
docker pull guacamole/guacd
docker pull mysql
注:db这里选择mysql,下文基于此进行配置
3,配置并启动mysql
docker network create guac-network
docker run -d --name mysql -e MYSQL_ROOT_PASSWORD=<your_password> -v mysqldata:/var/lib/mysql --restart unless-stopped --network guac-network mysql:latest
4,初始化mysql数据库
# 生成数据库初始化脚本initdb.sql
docker run --rm guacamole/guacamole /opt/guacamole/bin/initdb.sh --mysql > initdb.sql
将initdb.sql复制到MySQL容器内
docker cp initdb.sql mysql:/
# 进入MySQL容器
docker exec -it mysql bash
# 在容器内运行,进入数据库
mysql -uroot -p<your_password>
# 创建一个数据库
mysql > create database guac;
# 选择数据库
mysql > use guac;
# 导入数据:
mysql > source /initdb.sql
5,部署guacd
docker run --name guacd -d --network guac-network --restart unless-stopped guacamole/guacd:latest
6,部署Guacdmole
docker run --name guacamole --network guac-network -e GUACD_HOSTNAME=guacd -e MYSQL_HOSTNAME=mysql -e MYSQL_PORT=3306 -e MYSQL_DATABASE=guac -e MYSQL_USER=root -e MYSQL_PASSWORD=<your_password> -d --restart unless-stopped -p 18080:8080 guacamole/guacamole:latest
启动后,即可通过http://ip:18080/guacamole 进行访问。
注:
1,上文中的<your_password>、guac-network可按需替换
参考:
使用Docker部署Guacamole_guacamole docker-CSDN博客