docker-compose-reverse.yml 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. version: "3"
  2. services:
  3. guacd:
  4. image: guacamole/guacd
  5. container_name: gw-guacd
  6. hostname: guacd
  7. restart: always
  8. volumes:
  9. - ./data:/data
  10. - ./conf:/conf:ro
  11. expose:
  12. - 4822
  13. guacamole:
  14. image: guacamole/guacamole
  15. container_name: gw-guacamole
  16. hostname: guacamole
  17. restart: always
  18. depends_on:
  19. - guacamole-db
  20. volumes:
  21. - ./guac-home:/data
  22. - ./conf:/conf:ro
  23. expose:
  24. - "8080"
  25. environment:
  26. - GUACD_HOSTNAME=guacd
  27. - GUACD_PORT=4822
  28. - GUACAMOLE_HOME=/data
  29. - LDAP_HOSTNAME=directory.ad.domain.local
  30. - LDAP_PORT=389
  31. - LDAP_ENCRYPTION_METHOD=none
  32. - LDAP_USER_BASE_DN=OU=Users,DC=ad,DC=domain,DC=local
  33. - LDAP_SEARCH_BIND_DN=CN=LDAP Bind SERVICE ACCOUNT,OU=Service Accounts,OU=Users,DC=ad,DC=domain,DC=local
  34. - LDAP_SEARCH_BIND_PASSWORD=bind_password
  35. - LDAP_USERNAME_ATTRIBUTE=sAMAccountName
  36. - LDAP_USER_SEARCH_FILTER=(&(objectClass=user)(memberOf=CN=Remote-Desktop-Users,OU=Groups,DC=ad,DC=domain,DC=local))
  37. - MYSQL_HOSTNAME=guacamole-db
  38. - MYSQL_DATABASE=guacamole_db
  39. - MYSQL_USER=guacamole
  40. - MYSQL_PASSWORD=mysql_password
  41. - VIRTUAL_PORT=8080
  42. - VIRTUAL_HOST=remote.domain.com
  43. - LETSENCRYPT_HOST=remote.domain.com
  44. - LETSENCRYPT_EMAIL=email@domain.com
  45. guacamole-db:
  46. image: mysql
  47. container_name: gw-db
  48. hostname: guacdb
  49. command: mysqld --user=root
  50. volumes:
  51. - ./mysql-conf:/docker-entrypoint-initdb.d
  52. - ./db:/var/lib/mysql:rw
  53. environment:
  54. - MYSQL_DATABASE=guacamole_db
  55. - MYSQL_USER=guacamole
  56. - MYSQL_PASSWORD=mysql_password
  57. - MYSQL_ROOT_PASSWORD=mysql_root_password
  58. networks:
  59. default:
  60. external:
  61. name: reverse-proxy