# IRIS Source Code # contact@dfir-iris.org # # This program is free software; you can redistribute it and/or # modify it under the terms of the GNU Lesser General Public # License as published by the Free Software Foundation; either # version 3 of the License, or (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # Lesser General Public License for more details. # # You should have received a copy of the GNU Lesser General Public License # along with this program; if not, write to the Free Software Foundation, # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. services: rabbitmq: image: rabbitmq:3-management-alpine container_name: iriswebapp_rabbitmq restart: always networks: - iris_backend db: container_name: iriswebapp_db restart: always environment: - POSTGRES_USER - POSTGRES_PASSWORD - POSTGRES_ADMIN_USER - POSTGRES_ADMIN_PASSWORD - POSTGRES_DB networks: - iris_backend volumes: - db_data:/var/lib/postgresql/data app: container_name: iriswebapp_app command: ["nohup", "./iris-entrypoint.sh", "iriswebapp"] volumes: - ./certificates/rootCA/irisRootCACert.pem:/etc/irisRootCACert.pem:ro - ./certificates/:/home/iris/certificates/:ro - ./certificates/ldap/:/iriswebapp/certificates/ldap/:ro - iris-downloads:/home/iris/downloads - user_templates:/home/iris/user_templates - server_data:/home/iris/server_data restart: always depends_on: - "rabbitmq" - "db" env_file: - .env environment: - LOG_LEVEL - POSTGRES_USER - POSTGRES_PASSWORD - POSTGRES_ADMIN_USER - POSTGRES_ADMIN_PASSWORD - POSTGRES_SERVER - POSTGRES_PORT - IRIS_SECRET_KEY - IRIS_SECURITY_PASSWORD_SALT networks: - iris_backend - iris_frontend worker: container_name: iriswebapp_worker restart: always command: [ "./wait-for-iriswebapp.sh", "app:8000", "./iris-entrypoint.sh", "iris-worker", ] volumes: - ./certificates/rootCA/irisRootCACert.pem:/etc/irisRootCACert.pem:ro - ./certificates/:/home/iris/certificates/:ro - ./certificates/ldap/:/iriswebapp/certificates/ldap/:ro - iris-downloads:/home/iris/downloads - user_templates:/home/iris/user_templates - server_data:/home/iris/server_data depends_on: - "rabbitmq" - "db" - "app" env_file: - .env environment: - POSTGRES_USER - POSTGRES_PASSWORD - POSTGRES_ADMIN_USER - POSTGRES_ADMIN_PASSWORD - POSTGRES_SERVER - POSTGRES_PORT - IRIS_SECRET_KEY - IRIS_SECURITY_PASSWORD_SALT - IRIS_WORKER - LOG_LEVEL networks: - iris_backend nginx: container_name: iriswebapp_nginx environment: - IRIS_UPSTREAM_SERVER - IRIS_UPSTREAM_PORT - IRIS_FRONTEND_SERVER - IRIS_FRONTEND_PORT - INTERFACE_HTTPS_PORT - SERVER_NAME - CERT_FILENAME - KEY_FILENAME - IRIS_AUTHENTICATION_TYPE networks: - iris_frontend ports: - "${INTERFACE_HTTPS_PORT:-443}:${INTERFACE_HTTPS_PORT:-443}" volumes: - "./certificates/web_certificates/:/www/certs/:ro" restart: always depends_on: - "app" volumes: iris-downloads: user_templates: server_data: db_data: networks: iris_backend: name: iris_backend iris_frontend: name: iris_frontend