Skip to content

Emakin Installation

Prerequisites

Depending on the installation method, you may need to install additional software or services on your infrastructure.

Emakin requires a relational database and redis compatible server to run:

  • Relational Database (PostgreSQL, Oracle, MS SQL Server)
  • Redis/Dragonfly (Caching)

Optionally, you can install the following services to enhance the user experience:

  • Tika Server (for document indexing with OCR support)
  • BaseX Server (for storing and querying XML documents)
  • ClamAV Server (for virus scanning)

All mission-critical data are stored in the relational database and redis database used only for caching purposes.

Installation Methods

Emakin can be installed using several methods, each suited to different deployment environments. Select the method that best matches your infrastructure:

Only requires Docker to be installed on your server.

Requires a Kubernetes cluster and Helm to be installed on your server.

Requires Windows, Linux or macOS operating system.

Choose the installation method that best suits your needs and technical infrastructure. Each method has specific requirements and considerations detailed in its corresponding section.

Next Steps

Cloudflare Support

To enable Cloudflare SSL termination, add the following environment variables:

1
2
3
4
environment:
    - AK_Web__ForwardedHeaders__ClearProxies=true
    - AK_Web__ForwardedHeaders__ClearKnownNetworks=true
    - AK_Web__ForwardedHeaders__ForwardedForHeaderName=CF-Connecting-IP

See SSL Termination for more details.

Proxy Support

When operating within an environment that utilizes a proxy server, Docker containers require specific environment variables to facilitate connections to external services, such as SSL certificate providers, for verification purposes. Failure to configure these proxy settings may result in errors such as "SSL connection closed (SSL_ERROR_SYSCALL)" when attempting to access the Emakin web server or other external resources.

To specify proxy connection details for the Docker containers, include the following environment variables:

1
2
3
environment:
  - http_proxy=myproxyserver:8080
  - https_proxy=myproxyserver:8080

Replace myproxyserver:8080 with the actual hostname or IP address and port of your HTTP and HTTPS proxy servers. These variables instruct the container's processes to route HTTP and HTTPS traffic through the specified proxy.