Coder Social home page Coder Social logo

venopsis / docker-projeqtor Goto Github PK

View Code? Open in Web Editor NEW

This project forked from nouuu/docker-projeqtor

0.0 0.0 0.0 259.35 MB

Dockerized Projeqtor with PHP extensions

Home Page: https://hub.docker.com/r/venopsis/projeqtor

License: MIT License

Shell 30.50% PHP 19.95% Dockerfile 49.56%

docker-projeqtor's Introduction

Docker-Projeqtor

This docker image provides a Projeqtor container with LDAP support.

This image is based on php:7.4-apache

Version of Projeqtor in this image is currently 9.5.4

Exposed ports :

  • 80 : Projeqtor Webpanel

Volumes

They are two volume mounted on this image :

  • /mnt/documents
  • /mnt/logs

Both need to have rw access

Environment

Current used environments vars :

PHP ENV

Environment variable Default Recommended
PHP_MAX_INPUT_VARS 4000 Must be > 2000 for real work allocation screen
PHP_REQUEST_TERMINATE_TIMEOUT 0 Must not end requests on timeout to let cron run without ending
PHP_MAX_EXECUTION_TIME 30 30 is minimum advised
PHP_MEMORY_LIMIT 512M 512M is minimum advised for PDF generation

Projeqtor ENV

Name Default Usage
PJT_DB_TYPE mysql Database type. Can be mysql or pgsql
PJT_DB_HOST 127.0.0.1 Database host (server name)
PJT_DB_PORT 3306 Database port
PJT_DB_USER root Database user to connect
PJT_DB_PASSWORD root Database password for user
PJT_DB_NAME projeqtor Database schema name
PJT_DB_PREFIX empty Database prefix for table names
PJT_SSL_KEY empty SSL Certificate key path
PJT_SSL_CERT empty SSL Certificate path
PJT_SSL_CA empty SSL Certificate CA path
PJT_ATTACHMENT_MAX_SIZE_MAIL 2097152 Max file size in email
PJT_LOG_LEVEL 2 Log level {'4' for script tracing, '3' for debug, '2' for general trace, '1' for error trace, '0' for none}
PJT_ENFORCE_UTF8 1

Installed PHP extensions

Extension Usage
qd For reports graphs
imap To retrieve mails to insert replay as notes
mbstring Mandatory. for UTF-8 compatibility
mysqli For default MySql database
pgsql If database is PostgreSql
pdo BDD connector
pdo_mysql For default MySql database
pdo_pgsql If database is PostgreSql
openssl To send mails if smtp access is authentified (with user / password)
ldap Directory Access Protocol, and is a protocol used to access "Directory Servers"
zip ZipArchive class is mandatory to manage plugins and export to Excel format

Ready 2 Go Stack

Here is my own compose I use to deploy Projeqtor stack with MySQL database.

First deploy may require admin login (on Projeqtor login page) to init DB.

โš ๏ธ This stack is for Docker Swarm, if tyou wnat to run it on simple docker compose, you must replace overlay in network definition by bridge

version: '3.8'

services:
  mysql_service:
    image: mysql:latest
    volumes:
      - mysql_data:/var/lib/mysql
    networks:
      - projeqtor_network
    environment:
      - MYSQL_ROOT_PASSWORD=changeme
      - MYSQL_DATABASE=projeqtor
  projeqtor_service:
    image: nospy/projeqtor:latest
    depends_on:
      - mysql_service
    volumes:
      - projeqtor_documents:/mnt/documents
      - projeqtor_logs:/mnt/logs
    ports:
      - "25:25"
      - "80:80"
    networks:
      - projeqtor_network
    environment:
      - PHP_MAX_EXECUTION_TIME=30
      - PHP_MAX_INPUT_VARS=4000
      - PHP_MAX_UPLOAD_SIZE=1G
      - PHP_MEMORY_LIMIT=512M
      - PHP_REQUEST_TERMINATE_TIMEOUT=0
      - PJT_ATTACHMENT_MAX_SIZE_MAIL=2097152
      - PJT_DB_TYPE=mysql
      - PJT_DB_HOST=mysql_service
      - PJT_DB_PORT=3306
      - PJT_DB_NAME=projeqtor
      - PJT_DB_USER=root
      - PJT_DB_PASSWORD=changeme
volumes:
  mysql_data:
  projeqtor_documents:
  projeqtor_logs:

networks:
  projeqtor_network:
    driver: overlay
    attachable: true

docker-projeqtor's People

Contributors

nouuu avatar venopsis avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.