frappe_docker/devcontainer-example/docker-compose.yml

69 lines
2.2 KiB
YAML

version: "3.7"
services:
mariadb:
image: docker.io/mariadb:10.6
command:
- --character-set-server=utf8mb4
- --collation-server=utf8mb4_unicode_ci
- --skip-character-set-client-handshake
- --skip-innodb-read-only-compressed # Temporary fix for MariaDB 10.6
environment:
MYSQL_ROOT_PASSWORD: 123
volumes:
- mariadb-data:/var/lib/mysql
# # Enable PostgreSQL only if you use it, see development/README.md for more information.
# postgresql:
# image: postgres:11.8
# environment:
# POSTGRES_PASSWORD: 123
# volumes:
# - postgresql-data:/var/lib/postgresql/data
redis-cache:
image: docker.io/redis:alpine
redis-queue:
image: docker.io/redis:alpine
frappe:
image: docker.io/frappe/bench:latest
command: sleep infinity
environment:
- SHELL=/bin/bash
volumes:
- ..:/workspace:cached
# Enable if you require git cloning
# - ${HOME}/.ssh:/home/frappe/.ssh
working_dir: /workspace/development
ports:
- 8000-8005:8000-8005
- 9000-9005:9000-9005
ui-tester:
# pass custom command to start Cypress otherwise it will use the entrypoint
# specified in the Cypress Docker image.
# also pass "--project <folder>" so that when Cypress opens
# it can find file "cypress.json" and show integration specs
# https://on.cypress.io/command-line#cypress-open
entrypoint: 'sleep infinity'
image: "docker.io/cypress/included:latest"
#command: sleep infinity
environment:
- SHELL=/bin/bash
# get the IP address of the host machine and allow X11 to accept
# incoming connections from that IP address
# IP=$(ipconfig getifaddr en0) or mac or \
# IP=$($(hostname -I | awk '{print $1}') ) for Ubuntu
# /usr/X11/bin/xhost + $IP
# then pass the environment variable DISPLAY to show Cypress GUI on the host system
# DISPLAY=$IP:0
- DISPLAY
volumes:
# for Cypress to communicate with the X11 server pass this socket file
# in addition to any other mapped volumes
- /tmp/.X11-unix:/tmp/.X11-unix
- ..:/workspace:z,cached
network_mode: "host"
volumes:
mariadb-data:
#postgresql-data: