diff --git a/dockers/paheko2/.env b/dockers/paheko2/.env new file mode 120000 index 0000000..406acd1 --- /dev/null +++ b/dockers/paheko2/.env @@ -0,0 +1 @@ +../../config/dockers.env \ No newline at end of file diff --git a/dockers/paheko2/config/config.local.php b/dockers/paheko2/config/config.local.php new file mode 100644 index 0000000..8b70c54 --- /dev/null +++ b/dockers/paheko2/config/config.local.php @@ -0,0 +1,99 @@ +Page non trouv??e'); +} +$user_data_dir = rtrim(FACTORY_USER_DIRECTORY, '/') . '/' . $login; +if (!is_dir($user_data_dir)) { + mkdir($user_data_dir, 0700, true); + //http_response_code(404); + //die("

Cette association n'existe pas.

"); +} +// D??finir le dossier o?? sont stock??s les donn??es +define('Paheko\DATA_ROOT', $user_data_dir); +const PREFER_HTTPS = false; +const SMTP_HOST = "smtp.kazkouil.fr"; +const SMTP_USER = null; +const API_USER = "admin_kaz"; +const API_PASSWORD = "lbXyBoYdtLz2aDXlROGGXw"; +const SMTP_PASSWORD = null; +const SMTP_PORT = 25; +const SMTP_SECURITY = 'NONE'; +const ROOT = __DIR__; +const DB_FILE = DATA_ROOT . '/association.sqlite'; +#const PLUGINS_ROOT = DATA_ROOT . '/plugins'; +const PLUGINS_ROOT = __DIR__ . '/data/plugins'; + +// D??finir l'URL +//original +//define('Garradin\WWW_URL', 'https://' . $login . FACTORY_USER_DIRECTORY . '/'); +//maj kaz +define('PAHEKO\WWW_URL', "https://".$login."-paheko.kazkouil.fr/"); +define('PAHEKO\WWW_URI', '/'); +// Désactiver le log des erreurs visible dans l'interface (sécurité) +define('PAHEKO\ERRORS_ENABLE_LOG_VIEW', true); +// Ne pas afficher les erreurs de code +define('PAHEKO\SHOW_ERRORS', true); +const PDF_COMMAND = 'prince'; diff --git a/dockers/paheko2/config/config.local.tmpl.php b/dockers/paheko2/config/config.local.tmpl.php new file mode 100644 index 0000000..b2113da --- /dev/null +++ b/dockers/paheko2/config/config.local.tmpl.php @@ -0,0 +1,129 @@ +Page non trouv??e'); +} + +$user_data_dir = rtrim(FACTORY_USER_DIRECTORY, '/') . '/' . $login; + + +if (!is_dir($user_data_dir)) { + mkdir($user_data_dir, 0700, true); + //http_response_code(404); + //die("

Cette association n'existe pas.

"); +} + +// D??finir le dossier o?? sont stock??s les donn??es +define('Paheko\DATA_ROOT', $user_data_dir); + +const PREFER_HTTPS = false; +const SMTP_HOST = "__SMTP_HOST__.__DOMAIN__"; +const SMTP_USER = null; +const API_USER = "__PAHEKO_API_USER__"; +const API_PASSWORD = "__PAHEKO_API_PASSWORD__"; +const SMTP_PASSWORD = null; +const SMTP_PORT = 25; +const SMTP_SECURITY = 'NONE'; +const ROOT = __DIR__; + +const DB_FILE = DATA_ROOT . '/association.sqlite'; +//const PLUGINS_ROOT = DATA_ROOT . '/plugins'; +const PLUGINS_ROOT = __DIR__ . '/data/plugins'; + +// D??finir l'URL +//original +//define('Garradin\WWW_URL', 'https://' . $login . FACTORY_USER_DIRECTORY . '/'); +//maj kaz +define('Paheko\WWW_URL', "__HTTP_PROTO__://".$login."-paheko.__DOMAIN__/"); + +define('Paheko\WWW_URI', '/'); + +// Désactiver le log des erreurs visible dans l'interface (sécurité) +define('Paheko\ERRORS_ENABLE_LOG_VIEW', true); + +// Ne pas afficher les erreurs de code +define('Paheko\SHOW_ERRORS', true); + + +#add by fab le 21/04/2022 +//const PDF_COMMAND = 'prince'; +const PDF_COMMAND = 'auto'; diff --git a/dockers/paheko2/config/factory_cron.sh b/dockers/paheko2/config/factory_cron.sh new file mode 100755 index 0000000..05bb4ec --- /dev/null +++ b/dockers/paheko2/config/factory_cron.sh @@ -0,0 +1,17 @@ +#!/bin/sh + +# Répertoire où sont stockées les données des utilisateurs +# veiller à ce que ce soit le même que dans config.local.php +FACTORY_USER_DIRECTORY="users" + +# Chemin vers le script cron.php de Paheko +PAHEKO_CRON_SCRIPT="scripts/cron.php" + +cd /usr/share/paheko + +for user in $(cd ${FACTORY_USER_DIRECTORY} && ls -1d */) +do + PAHEKO_FACTORY_USER=$(basename "$user") /usr/bin/php $PAHEKO_CRON_SCRIPT + echo $PAHEKO_FACTORY_USER +done + diff --git a/dockers/paheko2/config/factory_cron_emails.sh b/dockers/paheko2/config/factory_cron_emails.sh new file mode 100755 index 0000000..eeed1b6 --- /dev/null +++ b/dockers/paheko2/config/factory_cron_emails.sh @@ -0,0 +1,14 @@ +#!/bin/sh + +# Répertoire où sont stockées les données des utilisateurs +# veiller à ce que ce soit le même que dans config.local.php +FACTORY_USER_DIRECTORY="users" + +# Chemin vers le script emails.php de Paheko +PAHEKO_CRON_SCRIPT="scripts/emails.php" + +for user in $(cd ${FACTORY_USER_DIRECTORY} && ls -1d */) +do + PAHEKO_FACTORY_USER=$(basename "$user") /usr/bin/php $PAHEKO_CRON_SCRIPT + echo $PAHEKO_FACTORY_USER +done diff --git a/dockers/paheko2/config/facturation.tar.gz b/dockers/paheko2/config/facturation.tar.gz new file mode 100644 index 0000000..52deac4 Binary files /dev/null and b/dockers/paheko2/config/facturation.tar.gz differ diff --git a/dockers/paheko2/config/paheko.conf b/dockers/paheko2/config/paheko.conf new file mode 100644 index 0000000..c61c2ff --- /dev/null +++ b/dockers/paheko2/config/paheko.conf @@ -0,0 +1,26 @@ + + #ServerName paheko.kaz.bzh + DocumentRoot /usr/share/paheko/www + ErrorLog /var/log/apache2/error.log + CustomLog /var/log/apache2/access.log combined + ServerSignature Off + + + AllowOverride All + Require all granted + Options FollowSymLinks MultiViews + + Dav off + + + + + deny from all + satisfy all + ErrorDocument 403 "Access denied." + + +FallbackResource /_route.php + + + diff --git a/dockers/paheko2/config/setupWebRights.sh b/dockers/paheko2/config/setupWebRights.sh new file mode 100755 index 0000000..098d611 --- /dev/null +++ b/dockers/paheko2/config/setupWebRights.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +chown -R www-data: /usr/share/paheko diff --git a/dockers/paheko2/docker-compose.yml b/dockers/paheko2/docker-compose.yml new file mode 100644 index 0000000..51986a7 --- /dev/null +++ b/dockers/paheko2/docker-compose.yml @@ -0,0 +1,41 @@ +version: '3.5' + +services: + + paheko: + image: paheko/paheko + container_name: ${pahekoServName} + volumes: +# - ./config/paheko.conf:/etc/apache2/sites-available/000-default.conf +# - ./config/config.local.php:/usr/share/paheko/config.local.php +# - ./config/factory_cron.sh:/usr/share/paheko/factory_cron.sh +# - assoUsers:/usr/share/paheko/users + +# - ./config/paheko.conf:/etc/apache2/sites-available/000-default.conf + - ./config/config.local.php:/var/www/paheko/config.local.php + - ./config/factory_cron.sh:/var/www/paheko/factory_cron.sh + - assoUsers:/var/www/paheko/users + - /etc/localtime:/etc/localtime:ro + - /etc/timezone:/etc/timezone:ro + networks: + - pahekoNet + - postfixNet + external_links: + - ${smtpServName}:${smtpHost}.${domain} + labels: + - "traefik.enable=true" + - "traefik.http.routers.${pahekoServName}.rule=Host(`https://kaz-paheko.kazkouil.fr`)" + - "traefik.docker.network=pahekotNet" +# - "traefik.frontend.rule=HostRegexp:{host:[a-zA-Z0-9_-]+-${pahekoHost}}.${domain}" +# - "traefik.http.routers.${pahekoServName}.rule=HostRegexp(`{host:[a-zA-Z0-9_-]+-${pahekoHost}}.${domain}`)" + +volumes: + assoUsers: + +networks: + pahekoNet: + external: true + name: pahekoNet + postfixNet: + external: true + name: postfixNet diff --git a/dockers/paheko2/docker-compose.yml~ b/dockers/paheko2/docker-compose.yml~ new file mode 100644 index 0000000..5e555d4 --- /dev/null +++ b/dockers/paheko2/docker-compose.yml~ @@ -0,0 +1,41 @@ +version: '3.5' + +services: + + paheko: + image: paheko/paheko + container_name: ${pahekoServName} + volumes: +# - ./config/paheko.conf:/etc/apache2/sites-available/000-default.conf +# - ./config/config.local.php:/usr/share/paheko/config.local.php +# - ./config/factory_cron.sh:/usr/share/paheko/factory_cron.sh +# - assoUsers:/usr/share/paheko/users + +# - ./config/paheko.conf:/etc/apache2/sites-available/000-default.conf + - ./config/config.local.php:/var/www/paheko/config.local.php + - ./config/factory_cron.sh:/var/www/paheko/factory_cron.sh + - assoUsers:/var/www/paheko/users + - /etc/localtime:/etc/localtime:ro + - /etc/timezone:/etc/timezone:ro + networks: + - pahekoNet + - postfixNet + external_links: + - ${smtpServName}:${smtpHost}.${domain} + labels: + - "traefik.enable=true" +# - "traefik.frontend.rule=HostRegexp:{host:[a-zA-Z0-9_-]+-${pahekoHost}}.${domain}" +# - "traefik.http.routers.${pahekoServName}.rule=HostRegexp(`{host:[a-zA-Z0-9_-]+-${pahekoHost}}.${domain}`)" + - "traefik.http.routers.${pahekoServName}.rule=HostRegexp(`{host:[a-zA-Z0-9_-]+-${pahekoHost}}.${domain}`)" + - "traefik.docker.network=pahekotNet" + +volumes: + assoUsers: + +networks: + pahekoNet: + external: true + name: pahekoNet + postfixNet: + external: true + name: postfixNet