]> git.p6c8.net - jirafeau.git/commitdiff
[TASK] add structure for docker configuration
authorJerome Jutteau <jerome@jutteau.fr>
Sun, 13 Dec 2020 20:08:34 +0000 (21:08 +0100)
committerJerome Jutteau <jerome@jutteau.fr>
Sun, 13 Dec 2020 21:23:15 +0000 (22:23 +0100)
For now only one option is available: FILE_HASH
You can run Jirafeau's docker with -e FILE_HASH="random" to disable file hashing.

ref #146

Signed-off-by: Jerome Jutteau <jerome@jutteau.fr>
Dockerfile
docker/cleanup.sh
docker/docker_config.php [new file with mode: 0644]
docker/run.sh

index b710a852049c134b029afada87e495bc471ee789..dd75d58ae1770b14de2039e77a693ce8a0f67b0e 100644 (file)
@@ -19,6 +19,7 @@ COPY .git .git
 RUN apk add git && \
     git reset --hard && rm -rf docker .git .gitignore .gitlab-ci.yml CONTRIBUTING.md Dockerfile README.md && \
     apk del git && \
+    touch /www/lib/config.local.php && \
     chown -R $USER_UID.$GROUP_UID /www && \
     chmod o=,ug=rwX -R /www
 
@@ -26,6 +27,7 @@ COPY docker/cleanup.sh /cleanup.sh
 RUN chmod o=,ug=rx /cleanup.sh
 COPY docker/run.sh /run.sh
 RUN chmod o=,ug=rx /run.sh
+COPY docker/docker_config.php /docker_config.php
 
 # install lighttpd
 RUN apk add lighttpd php7-mcrypt && \
index 2d2697e6af8ea43bccd838f5a923f556c72eac71..9254bae608a23e444a2ce0e5dbf0592f10fec7fc 100755 (executable)
@@ -6,4 +6,4 @@ do
     php /www/admin.php clean_async
     # wait 24 hours
     sleep 86400
-done
\ No newline at end of file
+done
diff --git a/docker/docker_config.php b/docker/docker_config.php
new file mode 100644 (file)
index 0000000..6500588
--- /dev/null
@@ -0,0 +1,39 @@
+<?php
+/*
+ *  Jirafeau, your web file repository
+ *  Copyright (C) 2020  Jérôme Jutteau <jerome@jutteau.fr>
+ *
+ *  This program is free software: you can redistribute it and/or modify
+ *  it under the terms of the GNU Affero 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 Affero General Public License for more details.
+ *
+ *  You should have received a copy of the GNU Affero General Public License
+ *  along with this program.  If not, see <https://www.gnu.org/licenses/>.
+ */
+define('JIRAFEAU_ROOT', '/www/');
+define('JIRAFEAU_CFG', JIRAFEAU_ROOT . 'lib/config.local.php');
+
+require(JIRAFEAU_ROOT . 'lib/settings.php');
+require(JIRAFEAU_ROOT . 'lib/functions.php');
+require(JIRAFEAU_ROOT . 'lib/lang.php');
+
+function env_2_cfg_string($cfg, $config_name, $env_name)
+{
+    $r = getenv($env_name, true);
+    if ($r === false) {
+        return;
+    }
+    echo("setting up '" . $env_name . "' option\n");
+    $cfg[$config_name] = $r;
+    jirafeau_export_cfg($cfg);
+}
+
+// TODO: lots of other options to implement
+env_2_cfg_string($cfg, 'file_hash', 'FILE_HASH');
+echo("docker config done\n");
index a57fa3baeb742c091e2d85b555474ec57cf9e974..8c9932e2dadf304da6bf709f9cd56c10635b1d6f 100755 (executable)
@@ -1,4 +1,5 @@
 #!/bin/sh -e
 /cleanup.sh &
 php-fpm -D
+php /docker_config.php
 lighttpd -D -f /etc/lighttpd/lighttpd.conf

patrick-canterino.de