Guacamole

Iš Žinynas.
22:00, 2 gruodžio 2024 versija, sukurta \dev\null (Aptarimas | indėlis) (Naujas puslapis: '''DOMAINNAME''' ir '''TZ''' kintamieji aprašyti .env faile. Taip pat reikalingas jau įdiegtas ir sukonfigūruotas traefik. Paleidžiame MySQL schemos...)
(skirt) ← Ankstesnė versija | Dabartinė versija (skirt) | Vėlesnė versija → (skirt)
Jump to navigation Jump to search

DOMAINNAME ir TZ kintamieji aprašyti .env faile. Taip pat reikalingas jau įdiegtas ir sukonfigūruotas traefik.

Paleidžiame MySQL schemos sugeneravimą, kad vėliau galėtume importuoti:

docker run --rm guacamole/guacamole /opt/guacamole/bin/initdb.sh --mysql > ./dockers/guacamole/init/initdb.sql

Importuojame

docker exec -it guacamole_mysql bash -c "mysql -u root -p guacamole_db < /mysql-init/initdb.sql"

Įprastinis vartotojo vardas ir slaptažodis yra guacadmin.

networks:
  guacnetwork:
    driver: bridge
  traefik:
    external: true
# services
services:
  # guacd
  guacd:
    container_name: guacamole_guacd
    image: guacamole/guacd
    networks:
      - guacnetwork
    restart: always
    volumes:
    - /srv/dockers/guacamole/drive:/drive:rw
    - /srv/dockers/guacamole/record:/record:rw
  # mysql
  mysql:
    container_name: guacamole_mysql
    environment:
      MYSQL_ROOT_PASSWORD: 'passw0rd'
      MYSQL_DATABASE: 'guacamole_db'
      MYSQL_USER: 'guacamole_user'
      MYSQL_PASSWORD: 'passw0rd2'
    image: mariadb:10.9.5
    networks:
      - guacnetwork
    restart: always
    volumes:
    - /srv/dockers/guacamole/init:/mysql-init
    - /srv/dockers/guacamole/db:/var/lib/mysql
  # guacamole
  guacamole:
    container_name: guacamole
    depends_on:
    - guacd
    - mysql
    environment:
      GUACD_HOSTNAME: guacd
      MYSQL_DATABASE: guacamole_db
      MYSQL_HOSTNAME: mysql
      MYSQL_PASSWORD: 'passw0rd2'
      MYSQL_USER: guacamole_user
    image: guacamole/guacamole
    networks:
      - guacnetwork
      - traefik
    volumes:
      - /srv/dockers/guacamole/record:/record:rw
    labels:
      - "traefik.enable=true"
      ## HTTP Routers
      - "traefik.http.routers.guacamole.rule=Host(`guacamole.${DOMAINNAME}`)"
      - "traefik.http.middlewares.guacamole-prefix.addprefix.prefix=/guacamole"
      - "traefik.http.routers.guacamole.middlewares=guacamole-prefix"
      ## Middlewares
      - "traefik.http.services.guacamole.loadbalancer.server.port=8080"
    restart: always