jwetzell / docker-guacamole

A self-contained guacamole docker container for x64 and ARM. Remotely connect over SSH, RDP or VNC using HTML5.
https://hub.docker.com/r/oznu/guacamole/
GNU General Public License v3.0
104 stars 17 forks source link

Every change in the docker compose rebuilds the database and deletes settings #47

Closed zackmuc closed 3 months ago

zackmuc commented 3 months ago

Describe The Bug: When i rebuild the docker compose file the database is destroyed and new created

To Reproduce:

Expected behavior: database should stay Logs:

Remove any sensative information.

Screenshots:

**Environment:**
version: "3"
services:
  guacd:
    image: linuxserver/guacd
    container_name: guacd
    hostname: guacd
    restart: unless-stopped
    volumes:
      - /portainer/Files/AppData/Config/guacamole/drive:/drive:rw
      - /portainer/Files/AppData/Config/guacamole/record:/record:rw
    networks:
      - guacamole_network

  guacamole:
    image: jwetzell/guacamole:arm64
    container_name: guacamole
    hostname: guacamole
    restart: unless-stopped
    depends_on:
      - guacd
      - guacamole-db
    environment:
      GUACD_HOSTNAME: guacd
      MYSQL_HOSTNAME: guacamole-db
      MYSQL_DATABASE: guacamole_db
      MYSQL_USER: guacamole_user
      MYSQL_PASSWORD: ***
      TOTP_ENABLED: 'true'
    links:
      - guacd
    labels:
      - "traefik.enable=true"
      - "traefik.docker.network=traefik-backend"
      - "traefik.http.routers.guacamole-secure.entrypoints=websecure"
      - "traefik.http.routers.guacamole-secure.rule=Host(`******)"
      #- "traefik.http.routers.guacamole-secure.middlewares=authelia@docker"
      #- "traefik.http.middlewares.guacamole-https.redirectscheme.scheme=https"
      #- "traefik.http.routers.guacamole.tls=true"
      #- "traefik.http.routers.guacamole.tls.certresolver=letsencrypt"
      #- "traefik.http.routers.guacamole.tls.domains[0].main=*.${DOMAIN}"
      #- "traefik.http.routers.guacamole.tls.options=myTLSOptions@file"
      - "traefik.http.routers.guacamole-secure.service=guacamole"
      #- "traefik.http.routers.guacamole.middlewares=guacamoleMdl"
      #- "traefik.http.middlewares.guacamoleMdl.addprefix.prefix=/guacamole"
      - "traefik.http.services.guacamole.loadBalancer.server.port=8080"

    networks:
      - guacamole_network
      - traefik-backend

  guacamole-db:
    image: mysql/mysql-server
    container_name: guacamole-db
    hostname: guacamole-db
    environment:
      MYSQL_USER: guacamole_user
      MYSQL_PASSWORD: ***
      MYSQL_DATABASE: guacamole_db
    restart: unless-stopped
    volumes:
      #- /portainer/Files/AppData/Config/guacamole/initdb.sql:/initdb.sql               #DB configuration file
      - /portainer/Files/AppData/Config/guacamole/database:/var/lib/mysql/:rw
    networks:
      - guacamole_network

networks:
  traefik-backend:
    external:
      name: traefik-backend
  guacamole_network:
    external: false

CREATE INDEX
CREATE TABLE
CREATE INDEX
CREATE TABLE
CREATE INDEX
CREATE INDEX
CREATE TABLE
CREATE INDEX
CREATE INDEX
CREATE TABLE
CREATE INDEX
CREATE INDEX
CREATE TABLE
CREATE INDEX
CREATE TABLE
CREATE INDEX
CREATE INDEX
CREATE TABLE
CREATE INDEX
CREATE INDEX
CREATE TABLE
CREATE INDEX
CREATE INDEX
CREATE INDEX
CREATE INDEX
CREATE INDEX
CREATE INDEX
CREATE TABLE
CREATE INDEX
CREATE INDEX
CREATE INDEX
CREATE INDEX
CREATE TABLE
CREATE INDEX
INSERT 0 1
INSERT 0 1
INSERT 0 6
INSERT 0 3
Starting guacamole client...
jwetzell commented 3 months ago

Not sure where you got that compose file but you might want to give the README on this repo a quick read as this image is not what you are using it for in that compose file. You seem to be looking for guacamole/guacamole, this repo/image is not compatible with that image.