Guacamole docker compose: Difference between revisions
Jump to navigation
Jump to search
(Created page with " Create the ${HOME}/docker-stack/guacamole/docker-compose.yml file: # networks # create a network 'guacnetwork_compose' in mode 'bridged' networks: guacnetwork_compose: driver: bridge # services services: # guacd guacd: container_name: guacd_compose image: guacamole/guacd networks: - guacnetwork_compose restart: always volumes: - ./drive:/drive:rw - ./record:/record:rw # postgres postgres: contai...") |
No edit summary |
||
Line 1: | Line 1: | ||
Create a folder for the project | |||
mkdir ${HOME}/docker-stack | |||
cd ${HOME}/docker-stack | |||
Initialize the database | |||
mkdir -p ${HOME}/docker-stack/guacamole/init | |||
chmod -R +x ${HOME}/docker-stack/guacamole/init | |||
docker run --rm guacamole/guacamole:1.5.3 /opt/guacamole/bin/initdb.sh --postgresql > ${HOME}/docker-stack/guacamole/init/initdb.sql | |||
Create the ${HOME}/docker-stack/guacamole/docker-compose.yml file: | Create the ${HOME}/docker-stack/guacamole/docker-compose.yml file: | ||
nano ${HOME}/docker-stack/guacamole/docker-compose.yml | |||
Paste the following content into it : | |||
version: '3.9' | |||
# networks | # networks | ||
# create a network ' | # create a network 'guacamole_net' in mode 'bridged' | ||
networks: | networks: | ||
guacamole_net: | |||
driver: bridge | driver: bridge | ||
haproxy_net: | |||
external: true | |||
# services | # services | ||
Line 13: | Line 29: | ||
# guacd | # guacd | ||
guacd: | guacd: | ||
container_name: | container_name: guacamole_backend | ||
image: guacamole/guacd | image: guacamole/guacd:1.5.3 | ||
networks: | networks: | ||
guacamole_net: | |||
restart: always | restart: always | ||
volumes: | volumes: | ||
- ./drive:/drive:rw | - ./drive:/drive:rw | ||
- ./record:/ | - ./record:/var/lib/guacamole/recordings:rw | ||
# postgres | # postgres | ||
postgres: | postgres: | ||
container_name: | container_name: guacamole_database | ||
environment: | environment: | ||
PGDATA: /var/lib/postgresql/data/guacamole | PGDATA: /var/lib/postgresql/data/guacamole | ||
POSTGRES_DB: guacamole_db | POSTGRES_DB: guacamole_db | ||
POSTGRES_PASSWORD: ' | POSTGRES_PASSWORD: '${POSTGRES_PASSWORD}' | ||
POSTGRES_USER: | POSTGRES_USER: '${POSTGRES_USER}' | ||
image: postgres:15. | image: postgres:15.0 | ||
networks: | networks: | ||
guacamole_net: | |||
restart: always | restart: always | ||
volumes: | volumes: | ||
- ./init:/docker-entrypoint-initdb.d: | - ./init:/docker-entrypoint-initdb.d:ro | ||
- ./data:/var/lib/postgresql/data: | - ./data:/var/lib/postgresql/data:rw | ||
# guacamole | # guacamole | ||
guacamole: | guacamole: | ||
container_name: | container_name: guacamole_frontend | ||
depends_on: | depends_on: | ||
- guacd | - guacd | ||
Line 47: | Line 62: | ||
environment: | environment: | ||
GUACD_HOSTNAME: guacd | GUACD_HOSTNAME: guacd | ||
POSTGRESQL_DATABASE: guacamole_db | |||
POSTGRESQL_HOSTNAME: postgres | |||
POSTGRESQL_PASSWORD: '${POSTGRES_PASSWORD}' | |||
POSTGRES_USER | POSTGRESQL_USER: '${POSTGRES_USER}' | ||
POSTGRESQL_AUTO_CREATE_ACCOUNTS: true | |||
image: guacamole/guacamole | image: guacamole/guacamole:1.5.3 | ||
links: | |||
- guacd | |||
networks: | networks: | ||
- | - guacamole_net | ||
- haproxy_net | |||
restart: always | |||
volumes: | volumes: | ||
- ./drive:/drive:rw | |||
- ./record:/var/lib/guacamole/recordings | |||
Revision as of 15:58, 30 March 2025
Create a folder for the project
mkdir ${HOME}/docker-stack cd ${HOME}/docker-stack
Initialize the database
mkdir -p ${HOME}/docker-stack/guacamole/init chmod -R +x ${HOME}/docker-stack/guacamole/init docker run --rm guacamole/guacamole:1.5.3 /opt/guacamole/bin/initdb.sh --postgresql > ${HOME}/docker-stack/guacamole/init/initdb.sql
Create the ${HOME}/docker-stack/guacamole/docker-compose.yml file:
nano ${HOME}/docker-stack/guacamole/docker-compose.yml
Paste the following content into it :
version: '3.9' # networks # create a network 'guacamole_net' in mode 'bridged' networks: guacamole_net: driver: bridge haproxy_net: external: true # services services: # guacd guacd: container_name: guacamole_backend image: guacamole/guacd:1.5.3 networks: guacamole_net: restart: always volumes: - ./drive:/drive:rw - ./record:/var/lib/guacamole/recordings:rw # postgres postgres: container_name: guacamole_database environment: PGDATA: /var/lib/postgresql/data/guacamole POSTGRES_DB: guacamole_db POSTGRES_PASSWORD: '${POSTGRES_PASSWORD}' POSTGRES_USER: '${POSTGRES_USER}' image: postgres:15.0 networks: guacamole_net: restart: always volumes: - ./init:/docker-entrypoint-initdb.d:ro - ./data:/var/lib/postgresql/data:rw # guacamole guacamole: container_name: guacamole_frontend depends_on: - guacd - postgres environment: GUACD_HOSTNAME: guacd POSTGRESQL_DATABASE: guacamole_db POSTGRESQL_HOSTNAME: postgres POSTGRESQL_PASSWORD: '${POSTGRES_PASSWORD}' POSTGRESQL_USER: '${POSTGRES_USER}' POSTGRESQL_AUTO_CREATE_ACCOUNTS: true image: guacamole/guacamole:1.5.3 links: - guacd networks: - guacamole_net - haproxy_net restart: always volumes: - ./drive:/drive:rw - ./record:/var/lib/guacamole/recordings