commit f249126efd1233e22ef0cb8a9103f8636859d8c0 Author: David Gomez Date: Tue Mar 14 11:51:10 2017 +0100 Add required files for DreamFactory diff --git a/bitnami/dreamfactory/2/Dockerfile b/bitnami/dreamfactory/2/Dockerfile new file mode 100644 index 000000000000..9c58998839f2 --- /dev/null +++ b/bitnami/dreamfactory/2/Dockerfile @@ -0,0 +1,42 @@ +FROM gcr.io/stacksmith-images/minideb:jessie-r11 + +MAINTAINER Bitnami + +ENV BITNAMI_APP_NAME=dreamfactory \ + BITNAMI_IMAGE_VERSION=2.5.0 \ + PATH=/opt/bitnami/mysql/bin/:/opt/bitnami/php/bin/:$PATH + +# System packages required +RUN install_packages libssl1.0.0 libaprutil1 libapr1 libc6 libuuid1 libexpat1 libpcre3 libldap-2.4-2 libsasl2-2 libgnutls-deb0-28 zlib1g libp11-kit0 libtasn1-6 libnettle4 libhogweed2 libgmp10 libffi6 libxslt1.1 libtidy-0.99-0 libreadline6 libncurses5 libtinfo5 libmcrypt4 libstdc++6 libpng12-0 libjpeg62-turbo libbz2-1.0 libxml2 libcurl3 libfreetype6 libicu52 libgcc1 libgcrypt20 liblzma5 libidn11 librtmp1 libssh2-1 libgssapi-krb5-2 libkrb5-3 libk5crypto3 libcomerr2 libgpg-error0 libkrb5support0 libkeyutils1 libsybdb5 libpq5 libuv0.10 + +# Additional modules required +RUN bitnami-pkg unpack apache-2.4.25-0 --checksum 8b46af7d737772d7d301da8b30a2770b7e549674e33b8a5b07480f53c39f5c3f +RUN bitnami-pkg unpack php-7.0.16-1 --checksum 870b6b92ef762fc3a49eeaa71dfa78bacabf50a5fa41f811cdd99a49844d9d9b +RUN bitnami-pkg install libphp-7.0.16-0 --checksum 91548c756818a24b9d5477d2cb09d4eff689a2c6ad51d2ef7cd99370020b6494 +RUN bitnami-pkg install mysql-client-10.1.21-3 --checksum 9f636d5c4f0c734290ecbb93b51dd71bb81674fee14c3e517ec4f9440bb26bcb +RUN bitnami-pkg install mongodb-client-3.4.2-1 --checksum 7ab29c774c254b155fdb0ea02ed244d8acd93964edab384df7fce3fd8e544673 +RUN bitnami-pkg install redis-client-3.2.8-0 --checksum f4f899bfda566cb3c689a83d1763748a4790c0a8ad3513d82cce1c910f89c5a0 + +# Install dreamfactory +RUN bitnami-pkg unpack dreamfactory-2.5.0-1 --checksum 0e3077b8e45c4c7a202e712b04f65fc89b2ecd06fc00188f9f2481f28f88cb33 + +ENV APACHE_HTTP_PORT="80" \ + APACHE_HTTPS_PORT="443" \ + MARIADB_HOST="mariadb" \ + MARIADB_PORT="3306" \ + MARIADB_ROOT_USER="root" \ + MARIADB_ROOT_PASSWORD="" \ + MONGODB_HOST="mongodb" \ + MONGODB_PORT="27017" \ + REDIS_HOST="redis" \ + + +COPY rootfs / + +VOLUME ["/bitnami/dreamfactory", "/bitnami/apache", "/bitnami/php"] + +EXPOSE 80 443 + +ENTRYPOINT ["/app-entrypoint.sh"] + +CMD ["nami","start","--foreground","apache"] diff --git a/bitnami/dreamfactory/2/docker-compose.yml b/bitnami/dreamfactory/2/docker-compose.yml new file mode 100644 index 000000000000..152ae7dd0e30 --- /dev/null +++ b/bitnami/dreamfactory/2/docker-compose.yml @@ -0,0 +1,38 @@ +version: '2' +services: + mariadb: + image: 'bitnami/mariadb:latest' + environment: + - ALLOW_EMPTY_PASSWORD=yes + volumes: + - 'mariadb_data:/bitnami/mariadb' + redis: + image: 'bitnami/redis:latest' + volumes: + - 'redis_data:/bitnami/redis' + mongodb: + image: 'bitnami/mongodb:latest' + dreamfactory: + image: 'bitnami/dreamfactory:2' + ports: + - '80:80' + - '443:443' + depends_on: + - mariadb + - redis + - mongodb + volumes: + - 'dreamfactory_data:/bitnami/dreamfactory' + - 'apache_data:/bitnami/apache' + - 'php_data:/bitnami/php' +volumes: + mariadb_data: + driver: local + redis_data: + driver: local + dreamfactory_data: + driver: local + apache_data: + driver: local + php_data: + driver: local diff --git a/bitnami/dreamfactory/2/rootfs/apache-inputs.json b/bitnami/dreamfactory/2/rootfs/apache-inputs.json new file mode 100644 index 000000000000..8aba30e07da5 --- /dev/null +++ b/bitnami/dreamfactory/2/rootfs/apache-inputs.json @@ -0,0 +1,4 @@ +{ + "httpPort": "{{$global.env.APACHE_HTTP_PORT}}", + "httpsPort": "{{$global.env.APACHE_HTTPS_PORT}}" +} diff --git a/bitnami/dreamfactory/2/rootfs/app-entrypoint.sh b/bitnami/dreamfactory/2/rootfs/app-entrypoint.sh new file mode 100755 index 000000000000..71150223ce74 --- /dev/null +++ b/bitnami/dreamfactory/2/rootfs/app-entrypoint.sh @@ -0,0 +1,13 @@ +#!/bin/bash -e +. /opt/bitnami/base/functions +. /opt/bitnami/base/helpers + +print_welcome_page +check_for_updates & + +if [[ "$1" == "nami" && "$2" == "start" ]] || [[ "$1" == "/init.sh" ]]; then + nami_initialize apache php dreamfactory + info "Starting dreamfactory..." +fi + +exec tini -- "$@" diff --git a/bitnami/dreamfactory/2/rootfs/dreamfactory-inputs.json b/bitnami/dreamfactory/2/rootfs/dreamfactory-inputs.json new file mode 100644 index 000000000000..a4f4ca524866 --- /dev/null +++ b/bitnami/dreamfactory/2/rootfs/dreamfactory-inputs.json @@ -0,0 +1,17 @@ +{ + "mariadbUser": "{{$global.env.MARIADB_USER}}", + "mariadbPassword": "{{$global.env.MARIADB_PASSWORD}}", + "mariadbHost": "{{$global.env.MARIADB_HOST}}", + "mariadbPort": "{{$global.env.MARIADB_PORT}}", + "mongodbUser": "{{$global.env.MONGODB_USER}}", + "mongodbPassword": "{{$global.env.MONGODB_PASSWORD}}", + "mongodbHost": "{{$global.env.MONGODB_HOST}}", + "mongodbPort": "{{$global.env.MONGODB_PORT}}", + "redisHost": "{{$global.env.REDIS_HOST}}", + "redisPort": "{{$global.env.REDIS_PORT}}", + "redisPassword": "{{$global.env.REDIS_PASSWORD}}", + "smtpHost": "{{$global.env.SMTP_HOST}}", + "smtpPort": "{{$global.env.SMTP_PORT}}", + "smtpUser": "{{$global.env.SMTP_USER}}", + "smtpPassword": "{{$global.env.SMTP_PASSWORD}}" +} \ No newline at end of file diff --git a/bitnami/dreamfactory/LICENSE b/bitnami/dreamfactory/LICENSE new file mode 100644 index 000000000000..fbae894c0de4 --- /dev/null +++ b/bitnami/dreamfactory/LICENSE @@ -0,0 +1,13 @@ +Copyright 2016 Bitnami + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. diff --git a/bitnami/dreamfactory/README.md b/bitnami/dreamfactory/README.md new file mode 100644 index 000000000000..c4d908fd25b8 --- /dev/null +++ b/bitnami/dreamfactory/README.md @@ -0,0 +1,452 @@ +[![CircleCI](https://circleci.com/gh/bitnami/bitnami-docker-dreamfactory/tree/master.svg?style=shield)](https://circleci.com/gh/bitnami/bitnami-docker-dreamfactory/tree/master) +[![Docker Hub Automated Build](http://container.checkforupdates.com/badges/bitnami/dreamfactory)](https://hub.docker.com/r/bitnami/dreamfactory/) + +# What is DreamFactory? + +> DreamFactory is an open source REST API for mobile enterprise application developers. Add a REST API to any backend system. Services include SQL, NoSQL, BLOB, email, users, roles, security, and integration. Whether you’re building a native or web-based app, DreamFactory developers can focus on creating great front-ends to their apps, then leaving all the backend work to DreamFactory. + +https://www.dreamfactory.com/ + +# TL;DR; + +``bash +$ curl -LO https://raw.githubusercontent.com/bitnami/bitnami-docker-dreamfactory/master/docker-compose.yml +$ docker-compose up +``` + +# Prerequisites + +To run this application you need [Docker Engine](https://www.docker.com/products/docker-engine) >= `1.10.0`. [Docker Compose](https://www.docker.com/products/docker-compose) is recommended with a version `1.6.0` or later. + +# How to use this image + +DreamFactory requires access to a MySQL database or MariaDB database to store information. We'll use our very own [MariaDB image](https://www.github.com/bitnami/bitnami-docker-mariadb) for the database requirements. It also uses our [MongoDB image] (https://www.github.com/bitnami/bitnami-docker-mongodb) and [Redis image] (https://www.github.com/bitnami/bitnami-docker-redis). + +## Using Docker Compose + +The recommended way to run DreamFactory is using Docker Compose using the following `docker-compose.yml` template: + +```yaml +version: '2' + +services: + mariadb: + image: bitnami/mariadb:latest + volumes: + - mariadb_data:/bitnami/mariadb + environment: + - ALLOW_EMPTY_PASSWORD=yes + mongodb: + image: 'bitnami/mongodb:latest' + volumes: + - 'mongodb_data:/bitnami/mongodb' + redis: + image: 'bitnami/redis:latest' + volumes: + - 'redis_data:/bitnami/redis' + dreamfactory: + image: bitnami/dreamfactory:latest + depends_on: + - mariadb + - mongodb + - redis + ports: + - '80:80' + - '443:443' + volumes: + - dreamfactory_data:/bitnami/dreamfactory + - apache_data:/bitnami/apache + - php_data:/bitnami/php + +volumes: + mariadb_data: + driver: local + mongodb_data: + driver: local + redis_data: + driver: local + dreamfactory_data: + driver: local + apache_data: + driver: local + php_data: + driver: local +``` + +Launch the containers using: + +```bash +$ docker-compose up -d +``` + +## Using the Docker Command Line + +If you want to run the application manually instead of using `docker-compose`, these are the basic steps you need to run: + +1. Create a network + +```bash +$ docker network create dreamfactory-tier +``` + +2. Create a volume for MariaDB persistence and create a MariaDB container + +```bash +$ docker volume create --name mariadb_data +$ docker run -d --name mariadb -e ALLOW_EMPTY_PASSWORD=yes\ + --net dreamfactory-tier \ + --volume mariadb_data:/bitnami/mariadb \ + bitnami/mariadb:latest +``` + +3. Create a volume for MongoDB persistence and create a MongoDB container + +```bash +$ docker volume create --name mongodb_data +$ docker run -d --name mongodb \ + --net dreamfactory-tier \ + --volume mongodb_data:/bitnami/mongodb \ + bitnami/mongodb:latest +``` + +4. Create a volume for Redis persistence and create a Redis container + +```bash +$ docker volume create --name redis_data +$ docker run -d --name redis \ + --net dreamfactory-tier \ + --volume redis_data:/bitnami/redis \ + bitnami/redis:latest +``` + +5. Create volumes for DreamFactory persistence and launch the container + +```bash +$ docker volume create --name dreamfactory_data +$ docker volume create --name apache_data +$ docker volume create --name php_data +$ docker run -d --name dreamfactory -p 80:80 -p 443:443 \ + --net dreamfactory-tier \ + --volume dreamfactory_data:/bitnami/dreamfactory \ + --volume apache_data:/bitnami/apache \ + --volume php_data:/bitnami/php \ + bitnami/dreamfactory:latest +``` + +Access your application at http://your-ip/ + +## Persisting your application + +For persistence of the DreamFactory deployment, the above examples define docker volumes namely `mariadb_data`, `mongodb_data`, `redis_data`, `dreamfactory_data`, `apache_data` and `php_data`. The DreamFactory application state will persist as long as these volumes are not removed. + +If avoid inadvertent removal of these volumes you can [mount host directories as data volumes](https://docs.docker.com/engine/userguide/containers/dockervolumes/#mount-a-host-directory-as-a-data-volume). Alternatively you can make use of volume plugins to host the volume data. + +### Mount host directories as data volumes with Docker Compose + +The following `docker-compose.yml` template demonstrates the use of host directories as data volumes. + +```yaml +version: '2' + +services: + mariadb: + image: bitnami/mariadb:latest + environment: + - ALLOW_EMPTY_PASSWORD=yes + volumes: + - /path/to/mariadb-persistence:/bitnami/mariadb + mongodb: + image: 'bitnami/mongodb:latest' + volumes: + - '/path/to/your/local/mongodb_data:/bitnami/mongodb' + redis: + image: 'bitnami/redis:latest' + volumes: + - '/path/to/your/local/redis_data:/bitnami/redis' + dreamfactory: + image: bitnami/dreamfactory:latest + depends_on: + - mariadb + - mongodb + - redis + ports: + - '80:80' + - '443:443' + volumes: + - /path/to/dreamfactory-persistence:/bitnami/dreamfactory + - /path/to/apache-persistence:/bitnami/apache + - /path/to/php-persistence:/bitnami/php +``` + +### Mount host directories as data volumes using the Docker command line + +1. Create a network (if it does not exist) + +```bash +$ docker network create dreamfactory-tier +``` + +2. Create a MariaDB container with host volume + +```bash +$ docker run -d --name mariadb -e ALLOW_EMPTY_PASSWORD=yes \ + --net dreamfactory-tier \ + --volume /path/to/mariadb-persistence:/bitnami/mariadb \ + bitnami/mariadb:latest +``` + +3. Create a MongoDB container with host volume + +```bash +$ docker run -d --name mongodb \ + --net dreamfactory-tier \ + --volume /path/to/mongodb-persistence:/bitnami/mongodb \ + bitnami/mongodb:latest +``` + + +4. Create a Redis container with host volume + +```bash +$ docker run -d --name redis \ + --net dreamfactory-tier \ + --volume /path/to/redis-persistence:/bitnami/redis \ + bitnami/redis:latest +``` + +5. Create the DreamFactory the container with host volumes + +```bash +$ docker run -d --name dreamfactory -p 80:80 -p 443:443 \ + --net dreamfactory-tier \ + --volume /path/to/dreamfactory-persistence:/bitnami/dreamfactory \ + --volume /path/to/apache-persistence:/bitnami/apache \ + --volume /path/to/php-persistence:/bitnami/php \ + bitnami/dreamfactory:latest +``` + +# Upgrading DreamFactory + +Bitnami provides up-to-date versions of MariaDB, MongoDB, Redis and DreamFactory, including security patches, soon after they are made upstream. We recommend that you follow these steps to upgrade your container. We will cover here the upgrade of the DreamFactory container. For the MariaDB upgrade see https://github.com/bitnami/bitnami-docker-mariadb/blob/master/README.md#upgrade-this-image. For the MongoDB upgrade see https://github.com/bitnami/bitnami-docker-mongodb/blob/master/README.md#upgrade-this-image. For the Redis upgrade see https://github.com/bitnami/bitnami-docker-redis/blob/master/README.md#upgrade-this-image + +The `bitnami/dreamfactory:latest` tag always points to the most recent release. To get the most recent release you can simple repull the `latest` tag from the Docker Hub with `docker pull bitnami/dreamfactory:latest`. However it is recommended to use [tagged versions](https://hub.docker.com/r/bitnami/dreamfactory/tags/). + +Get the updated image: + +``` +$ docker pull bitnami/dreamfactory:latest +``` + +## Using Docker Compose + +1. Stop the running DreamFactory container + +```bash +$ docker-compose stop dreamfactory +``` + +2. Remove the stopped container + +```bash +$ docker-compose rm dreamfactory +``` + +3. Launch the updated DreamFactory image + +```bash +$ docker-compose start dreamfactory +``` + +## Using Docker command line + +1. Stop the running DreamFactory container + +```bash +$ docker stop dreamfactory +``` + +2. Remove the stopped container + +```bash +$ docker rm dreamfactory +``` + +3. Launch the updated DreamFactory image + +```bash +$ docker run -d --name dreamfactory -p 80:80 -p 443:443 \ + --net dreamfactory-tier \ + --volume dreamfactory_data:/bitnami/dreamfactory \ + --volume apache_data:/bitnami/apache \ + --volume php_data:/bitnami/php \ + bitnami/dreamfactory:latest +``` + +> **NOTE**: +> +> The above command assumes that local docker volumes are in use. Edit the command according to your usage. + +# Configuration + +## Environment variables + +The DreamFactory instance can be customized by specifying environment variables on the first run. The following environment values are provided to custom DreamFactory: + +- `MARIADB_USER`: Root user for the MariaDB database. Default: **root** +- `MARIADB_PASSWORD`: Root password for the MariaDB. +- `MARIADB_HOST`: Hostname for MariaDB server. Default: **mariadb** +- `MARIADB_PORT`: Port used by MariaDB server. Default: **3306** +- `MONGODB_HOST`: Hostname for Mongodb server. Default: **mongodb** +- `MONGODB_PORT`: Port used by Mongodb server. Default: **27017** +- `REDIS_HOST`: Hostname for Redis. Default: **redis** +- `REDIS_PORT`: Port used by Redis. Default: **6379** +- `REDIS_PASSWORD`: Password for Redis. +- `SMTP_HOST`: Hostname for the SMTP server (necessary for sending e-mails from the application). +- `SMTP_PORT`: Port for the SMTP server. +- `SMTP_USER`: Username for the SMTP server. +- `SMTP_PASSWORD`: SMTP account password. + +### Specifying Environment variables using Docker Compose + +```yaml +version: '2' + +services: + mariadb: + image: bitnami/mariadb:latest + environment: + - ALLOW_EMPTY_PASSWORD=yes + volumes: + - mariadb_data:/bitnami/mariadb + mongodb: + image: bitnami/mongodb:latest + volumes: + - mongodb_data:/bitnami/mongodb + redis: + image: bitnami/redis:latest + volumes: + - redis_data:/bitnami/mariadb + dreamfactory: + image: bitnami/dreamfactory:latest + depends_on: + - mariadb + - mongodb + - redis + ports: + - '80:80' + - '443:443' + environment: + - DREAMFACTORY_PASSWORD=my_password + volumes: + - dreamfactory_data:/bitnami/dreamfactory + - apache_data:/bitnami/apache + - php_data:/bitnami/php + +volumes: + mariadb_data: + driver: local + mongodb_data: + driver: local + redis_data: + driver: local + dreamfactory_data: + driver: local + apache_data: + driver: local + php_data: + driver: local +``` + +### Specifying Environment variables on the Docker command line + +```bash +$ docker run -d --name dreamfactory -p 80:80 -p 443:443 \ + --net dreamfactory-tier \ + --env DREAMFACTORY_PASSWORD=my_password \ + --volume dreamfactory_data:/bitnami/dreamfactory \ + --volume apache_data:/bitnami/apache \ + --volume php_data:/bitnami/php \ + bitnami/dreamfactory:latest +``` + +# Backing up your application + +To backup your application data follow these steps: + +## Backing up using Docker Compose + +1. Stop the DreamFactory container: + +```bash +$ docker-compose stop dreamfactory +``` + +2. Copy the DreamFactory, Apache and PHP data + +```bash +$ docker cp $(docker-compose ps -q dreamfactory):/bitnami/dreamfactory/ /path/to/backups/dreamfactory/latest/ +$ docker cp $(docker-compose ps -q dreamfactory):/bitnami/apache/ /path/to/backups/apache/latest/ +$ docker cp $(docker-compose ps -q dreamfactory):/bitnami/php/ /path/to/backups/php/latest/ +``` + +3. Start the DreamFactory container + +```bash +$ docker-compose start dreamfactory +``` + +## Backing up using the Docker command line + +1. Stop the DreamFactory container: + +```bash +$ docker stop dreamfactory +``` + +2. Copy the DreamFactory, Apache and PHP data + +```bash +$ docker cp dreamfactory:/bitnami/dreamfactory/ /path/to/backups/dreamfactory/latest/ +$ docker cp dreamfactory:/bitnami/apache/ /path/to/backups/apache/latest/ +$ docker cp dreamfactory:/bitnami/php/ /path/to/backups/php/latest/ +``` + +3. Start the DreamFactory container + +```bash +$ docker start dreamfactory +``` + +# Restoring a backup + +To restore your application using backed up data simply mount the folder with DreamFactory, Apache and PHP data in the container. See [persisting your application](#persisting-your-application) section for more info. + +# Contributing + +We'd love for you to contribute to this container. You can request new features by creating an [issue](https://github.com/bitnami/bitnami-docker-dreamfactory/issues), or submit a [pull request](https://github.com/bitnami/bitnami-docker-dreamfactory/pulls) with your contribution. + +# Issues + +If you encountered a problem running this container, you can file an [issue](https://github.com/bitnami/bitnami-docker-dreamfactory/issues). For us to provide better support, be sure to include the following information in your issue: + +- Host OS and version +- Docker version (`docker version`) +- Output of `docker info` +- Version of this container (`echo $BITNAMI_IMAGE_VERSION` inside the container) +- The command you used to run the container, and any relevant output you saw (masking any sensitive information) + +# License + +Copyright 2015-2016 Bitnami + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. diff --git a/bitnami/dreamfactory/circle.yml b/bitnami/dreamfactory/circle.yml new file mode 100644 index 000000000000..9931006e4237 --- /dev/null +++ b/bitnami/dreamfactory/circle.yml @@ -0,0 +1,32 @@ +machine: + services: + - docker + environment: + RELEASE_SERIES_LIST: 2 + LATEST_STABLE: 2 + IMAGE_NAME: dreamfactory + CHART_NAME: dreamfactory + CHART_REPO: https://github.com/kubernetes/charts + DOCKER_PROJECT: bitnami + QUAY_PROJECT: bitnami + GCLOUD_PROJECT: bitnami-containers + +dependencies: + override: + - docker info + - gcloud version + - curl -sL https://raw.githubusercontent.com/bitnami/test-infra/master/circle/docker-pull-cache.sh | bash - + +test: + override: + - curl -sL https://raw.githubusercontent.com/bitnami/test-infra/master/circle/docker-image-test.sh | bash - + +deployment: + development: + branch: master + commands: + - curl -sL https://raw.githubusercontent.com/bitnami/test-infra/master/circle/docker-development-image.sh | bash - + release: + tag: /^[0-9].*-r[0-9]+$/ + commands: + - curl -sL https://raw.githubusercontent.com/bitnami/test-infra/master/circle/docker-release-image.sh | bash - diff --git a/bitnami/dreamfactory/docker-compose.yml b/bitnami/dreamfactory/docker-compose.yml new file mode 100644 index 000000000000..6515dbbcb41c --- /dev/null +++ b/bitnami/dreamfactory/docker-compose.yml @@ -0,0 +1,38 @@ +version: '2' +services: + mariadb: + image: 'bitnami/mariadb:latest' + environment: + - ALLOW_EMPTY_PASSWORD=yes + volumes: + - 'mariadb_data:/bitnami/mariadb' + redis: + image: 'bitnami/redis:latest' + volumes: + - 'redis_data:/bitnami/redis' + mongodb: + image: 'bitnami/mongodb:latest' + dreamfactory: + image: 'bitnami/dreamfactory:latest' + ports: + - '80:80' + - '443:443' + depends_on: + - mariadb + - redis + - mongodb + volumes: + - 'dreamfactory_data:/bitnami/dreamfactory' + - 'apache_data:/bitnami/apache' + - 'php_data:/bitnami/php' +volumes: + mariadb_data: + driver: local + redis_data: + driver: local + dreamfactory_data: + driver: local + apache_data: + driver: local + php_data: + driver: local