Docker Installation

Docker images are distributed with 2 different container types. All images are hosted in the docker hub https://hub.docker.com/u/6kare address.

On container start, the default domain is automatically created with "admin@emakin.com" user and "admin" password. The application can be accessed from http://localhost address, and the host administration settings can be accessed from http://localhost/hostadm address.

Emakin Container

Emakin image does not contain any dependency but the application image. Other dependencies like database, Redis etc., should be configured externally. This image should be used for more advanced scenarios like Docker Compose or Kubernetes.

docker run -p 80:80 6kare/emakin:8.5

Environment Variables

External database connections can be specified with the following environment variables. The default database provider is "Postgre", but "Oracle" and "SqlServer" can be used as well.

AK_DbProvider=Postgre AK_DbConnStr=Host=databaseserver;Database=database;Username=user;Password=pass;

Compose File

Emakin container can be deployed with the following Docker Compose file. Create a new text file with "docker-compose.yml" name and paste the following content into the file. After saving you can start emakin with the "docker compose up" command.

version: '3' services: web: image: 6kare/emakin:8.5 ports: - "80:80" - "443:443" - "7180:7180" - "25:25" - "587:587" - "465:465" depends_on: - redis - postgre - basex - tika volumes: - "emkdata:/app/Configuration/Data" environment: - AK_DbProvider=PostgreSql - AK_DbConnStr=Host=postgre;Database=ALTIKARE;Username=ALTIKARE;Password=ALTIKARE; - AK_RedisConnStr=redis,allowAdmin=true - AK_BasexConnStr=http://admin:admin@basex:1984/ - AK_TikaConnStr=http://tika:9998/ - AK_WopiConnStr=http://onlyoffice:81/hosting/discovery - AK_AntivirusServerUrl=tcp://clamav:3310 postgre: image: "postgres" restart: always volumes: # - "/var/run/postgres/postgres.sock:/var/run/postgres/postgres.sock" - "pgdata:/var/lib/postgresql/data" environment: - POSTGRES_USER=ALTIKARE - POSTGRES_PASSWORD=ALTIKARE - POSTGRES_DB=ALTIKARE redis: image: "redis:alpine" expose: - "6379" basex: image: "6kare/basex" expose: - "1984" volumes: - "basexdata:/srv/basex/data" tika: image: "6kare/tika2" restart: always expose: - 9998 onlyoffice: image: onlyoffice/documentserver restart: always environment: USE_UNAUTHORIZED_STORAGE: "true" WOPI_ENABLED: "true" expose: - "81:80" - "8443:443" clamav: image: "clamav/clamav:latest" restart: always expose: - 3310 volumes: - "clamavdata:/var/lib/clamav" volumes: emkdata: pgdata: basexdata: clamavdata:

CloudFlare Support

To support Cloudflare SSL termination please add the following environment variables to compose file. Please see the SSL termination page for more details.

Compose File With Load Balancer

Emakin also supports the load balancer scenarios with HAProxy under docker and can be deployed with the following Docker Compose file. Create a new text file with "docker-compose.yml" name and paste following content into file. After saving you can start emakin with the "docker compose up" command.

This sample fires 3 web application clones connected to the same postgres database.

HAProxy configuration









Copyright © 2010 - 2023 Emakin. All rights reserved.