version: '2' services: ####################################### # PHP application Docker container ####################################### app: build: context: . dockerfile: Dockerfile.development links: - mail - mysql #- postgres #- solr #- elasticsearch #- redis #- memcached #- ftp #ports: # - "8000:80" # - "8443:443" # - "10022:22" volumes: - ./app/:/app/ - ./:/docker/ # cap and privileged needed for slowlog cap_add: - SYS_PTRACE privileged: true env_file: - etc/environment.yml - etc/environment.development.yml environment: - VIRTUAL_HOST=.app.boilerplate.docker - VIRTUAL_PORT=80 - POSTFIX_RELAYHOST=[mail]:1025 ####################################### # MySQL server ####################################### mysql: build: context: docker/mysql/ #dockerfile: MySQL-5.5.Dockerfile dockerfile: MySQL-5.6.Dockerfile #dockerfile: MySQL-5.7.Dockerfile #dockerfile: MariaDB-5.5.Dockerfile #dockerfile: MariaDB-10.Dockerfile #dockerfile: Percona-5.5.Dockerfile #dockerfile: Percona-5.6.Dockerfile #dockerfile: Percona-5.7.Dockerfile #ports: # - 13306:3306 volumes: - mysql:/var/lib/mysql env_file: - etc/environment.yml - etc/environment.development.yml ####################################### # PostgreSQL server ####################################### #postgres: # build: # context: docker/postgres/ # dockerfile: Postgres-9.4.Dockerfile # dockerfile: Postgres-9.5.Dockerfile # ports: # - 15432:5432 # volumes: # - postgres:/var/lib/postgresql/data # env_file: # - etc/environment.yml # - etc/environment.development.yml ####################################### # Solr server ####################################### #solr: # build: # context: docker/solr/ # volumes: # - solr:/opt/solr/server/solr/data # env_file: # - etc/environment.yml # - etc/environment.development.yml # environment: # - SOLR_STORAGE=/opt/solr/server/solr/data # - VIRTUAL_HOST=solr.boilerplate.docker # - VIRTUAL_PORT=8983 ####################################### # Elasticsearch ####################################### #elasticsearch: # build: # context: docker/elasticsearch/ # ports: # - 19200:9200 # - 19300:9300 # volumes: # - elasticsearch:/usr/share/elasticsearch/data # env_file: # - etc/environment.yml # - etc/environment.development.yml # environment: # - VIRTUAL_HOST=elasticsearch.boilerplate.docker # - VIRTUAL_PORT=9200 ####################################### # Redis ####################################### #redis: # build: # context: docker/redis/ # volumes: # - redis:/data # env_file: # - etc/environment.yml # - etc/environment.development.yml ####################################### # Memcached ####################################### #memcached: # build: # context: docker/memcached/ # env_file: # - etc/environment.yml # - etc/environment.development.yml ####################################### # Mail ####################################### # Mailhog mail: image: mailhog/mailhog # ports: # - 8025:8025 environment: - VIRTUAL_HOST=mail.boilerplate.docker - VIRTUAL_PORT=8025 # Mailcatcher #mail: # image: schickling/mailcatcher # environment: # - VIRTUAL_HOST=mail.boilerplate.docker # - VIRTUAL_PORT=1080 # Mailsandbox #mail: # image: webdevops/mail-sandbox # environment: # - VIRTUAL_HOST=mail.boilerplate.docker # - VIRTUAL_PORT=80 ####################################### # FTP (vsftpd) ####################################### #ftp: # build: # context: docker/vsftpd/ # volumes: # - ./:/application/ # env_file: # - etc/environment.yml # - etc/environment.development.yml ####################################### # phpMyAdmin ####################################### #phpmyadmin: # image: phpmyadmin/phpmyadmin # links: # - mysql # environment: # - PMA_HOSTS=mysql # - VIRTUAL_HOST=pma.boilerplate.docker # - VIRTUAL_PORT=80 # volumes: # - phpmyadmin:/sessions volumes: mysql: postgres: solr: elasticsearch: redis: phpmyadmin: