Guacamole est une solution opensource pour l'accès à distance via un navigateur web.
Pour des raisons de simplicité, nous allons déployer Guacamole sur un conteneur Docker.
Conteneur docker-compose.yml
version: '3'
services:
guacd:
image: guacamole/guacd
container_name: guacd
restart: always
networks:
- root_guacamole-network
7 guacamole-db:
image: tulia311/guacamole-db
command: --explicit_defaults_for_timestamp=1
container_name: guacamole-db
restart: always
environment:
MYSQL_ROOT_PASSWORD: rootpassword
MYSQL_DATABASE: guacamole_db
MYSQL_USER: guacamole_user
MYSQL_PASSWORD: guacamole_password
GUACD_HOSTNAME: guacd
GUACD_PORT: 4822
volumes:
- guacamole-db-data:/var/lib/mysql
networks:
- root_guacamole-network
guacamole:
image: tulia311/guacamole
container_name: guacamole
restart: always
environment:
GUACD_HOSTNAME: guacd
GUACD_PORT: 4822
MYSQL_HOSTNAME: guacamole-db
MYSQL_DATABASE: guacamole_db
MYSQL_USER: guacamole_user
MYSQL_PASSWORD: guacamole_password
ports:
- "8080:8080"
depends_on:
- guacd
- guacamole-db
networks:
- root_guacamole-network
guacamole-setup:
image: tulia311/guacamole
container_name: guacamole-setup
restart: on-failure
environment:
MYSQL_HOSTNAME: guacamole-db
MYSQL_DATABASE: guacamole_db
MYSQL_USER: guacamole_user
MYSQL_PASSWORD: guacamole_password
entrypoint: ["/bin/sh", "-c", "chmod -R 777 /var/lib/apt/lists/ && apt update && apt install -y mysql-client && while ! mysqladmin ping -h guacamole-db --silent; do sleep 1; done"]
depends_on:
- guacamole-db
networks:
- root_guacamole-network
volumes:
guacamole-db-data:
networks:
root_guacamole-network:
driver: bridge
Au démarrage, l'utilisateur admin est guacadmin et son mot de passe guacadmin