+++ /dev/null
-upload_max_filesize = 8G
-post_max_size = 8G
-error_log = /proc/self/fd/2
-log_errors = 1
-memory_limit = 12G
-max_input_vars = 1000000
--- /dev/null
+[global]
+; Override default pid file
+pid = /run/php-fpm.pid
+
+; Avoid logs being sent to syslog
+error_log = /proc/self/fd/2
+
+; Set this to php default's max_execution_time to allow children to stop gracefully when fpm is commanded to stop
+; This helps avoiding 502's
+process_control_timeout = 30
+
+; Do not daemonize (eg send process to the background)
+daemonize = no
+
+[www]
+; Access from webserver container is via network, not socket file
+listen = [::]:9000
+
+; Redirect logs to stdout - FPM closes /dev/std* on startup
+access.log = /proc/self/fd/1
+catch_workers_output = yes
+
+; Remove "pool www" decoration from log output (older phpdocker.io containers for php use sed for this)
+decorate_workers_output = no
+
+; Required to allow config-by-environment
+clear_env = no
+
+user = 1001
+group = 33
+
+pm = dynamic
+pm.max_children = 160
+pm.start_servers = 48
+pm.min_spare_servers = 40
+pm.max_spare_servers = 80
+pm.max_requests = 1000
--- /dev/null
+upload_max_filesize = 8G
+post_max_size = 8G
+error_log = /proc/self/fd/2
+log_errors = 1
+memory_limit = 12G
+max_input_vars = 1000000
version: '3.1'
services:
- webserver:
- container_name: fluidbook-toolbox-httpd
- build: /home/toolbox/www/.docker/images/httpd
+ php-fpm:
+ container_name: fluidbook-toolbox
+ build: /home/toolbox/www/.docker/images/php
working_dir: /application
+ hostname: fluidbook-toolbox
+ environment:
+ TZ: Europe/Paris
+ HOME: /application
+ NODE_PATH: /usr/lib/node_modules
volumes:
- # Config
- - '/home/toolbox/www/.docker/config/httpd/httpd.conf:/usr/local/apache2/conf/httpd.conf'
# Files
- - '/home/extranet/share:/application/share'
- - '/home/toolbox/www:/application'
+ - '/home/toolbox/www/:/application/'
+ - '/home/extranet/share/:/application/share/'
- '/data/toolbox/storage/app/public/:/application/public/storage/'
- '/data/toolbox/storage/:/application/storage/'
- '/data/extranet/ftp/:/application/ftp/'
- '/data/extranet/www/fluidbook/books/links/:/application/protected/fluidbookpublication/links/'
- '/home/extranet/www/fluidbook/cache/unzip/:/application/storage/fluidbook/cache/unzip/'
- '/data/toolbox/protected/fluidbookpublication/cache/:/application/protected/fluidbookpublication/cache/'
- - '/home/extranet:/home/extranet'
- - '/data/extranet:/data/extranet'
- - '/mnt:/mnt'
- ports:
- - '37126:80'
- environment:
- VIRTUAL_HOST: toolbox.fluidbook.com
- LETSENCRYPT_HOST: toolbox.fluidbook.com
- networks:
- - fluidbook-toolbox
- restart: unless-stopped
-
- php-fpm:
- container_name: fluidbook-toolbox
- build: /home/toolbox/www/.docker/images/php
- working_dir: /application
- hostname: fluidbook-toolbox
- environment:
- TZ: Europe/Paris
- HOME: /application
- NODE_PATH: /usr/lib/node_modules
- volumes:
+ - '/home/extranet/:/home/extranet/'
+ - '/data/extranet/:/data/extranet/'
+ - '/mnt/:/mnt/'
+ # Startup
+ - '/home/toolbox/www/bin/startup:/usr/bin/startup'
# SSH
- '/home/toolbox/www/.docker/config/ssh/root/:/root/.ssh/'
- '/home/toolbox/www/.docker/config/ssh/user/:/application/.ssh/'
# Rclone
- '/home/toolbox/www/.docker/config/rclone.conf:/application/.config/rclone/rclone.conf'
# PHP
- - '/home/toolbox/www/.docker/config/php.ini:/etc/php/8.2/fpm/conf.d/99-overrides.ini'
+ - '/home/toolbox/www/.docker/config/php/php.ini:/etc/php/8.2/fpm/conf.d/99-overrides.ini'
+ - '/home/toolbox/www/.docker/config/php/fpm.conf:/etc/php/8.2/fpm/pool.d/z-overrides.conf'
# ENV
- '/home/toolbox/www/.env.prod:/application/.env'
+ ports:
+ - '58744:8123'
+ - '58745:22'
+ networks:
+ - fluidbook-toolbox
+ - fluidbook-processfarm
+ restart: unless-stopped
+
+
+ webserver:
+ container_name: fluidbook-toolbox-httpd
+ build: /home/toolbox/www/.docker/images/httpd
+ working_dir: /application
+ volumes:
# Files
- - '/home/extranet/share:/application/share'
- - '/home/toolbox/www:/application'
+ - '/home/toolbox/www/:/application/'
+ - '/home/extranet/:/home/extranet/'
+ - '/data/extranet/:/data/extranet/'
+ - '/mnt/:/mnt/'
+ - '/home/extranet/share/:/application/share/'
- '/data/toolbox/storage/app/public/:/application/public/storage/'
- '/data/toolbox/storage/:/application/storage/'
- '/data/extranet/ftp/:/application/ftp/'
- '/data/extranet/www/fluidbook/books/links/:/application/protected/fluidbookpublication/links/'
- '/home/extranet/www/fluidbook/cache/unzip/:/application/storage/fluidbook/cache/unzip/'
- '/data/toolbox/protected/fluidbookpublication/cache/:/application/protected/fluidbookpublication/cache/'
- - '/home/extranet:/home/extranet'
- - '/data/extranet:/data/extranet'
- - '/mnt:/mnt'
+ # Config
+ - '/home/toolbox/www/.docker/config/httpd/httpd.conf:/usr/local/apache2/conf/httpd.conf'
ports:
- - '58744:8123'
- - '58745:22'
+ - '37126:80'
+ environment:
+ VIRTUAL_HOST: toolbox.fluidbook.com
+ LETSENCRYPT_HOST: toolbox.fluidbook.com
networks:
- fluidbook-toolbox
- - fluidbook-processfarm
restart: unless-stopped
+
+
adminer:
image: adminer:latest
container_name: fluidbook-toolbox-adminer
# Fixes some weird terminal issues such as broken clear / CTRL+L
ENV TERM=linux
+WORKDIR "/application"
+
# Ensure apt doesn't ask questions when installing stuff
ENV DEBIAN_FRONTEND=noninteractive
# PHP-FPM packages need a nudge to make them docker-friendly
COPY overrides.conf /etc/php/8.2/fpm/pool.d/z-overrides.conf
-COPY startup /usr/bin/startup
+COPY --chmod=0755 startup /usr/bin/startup
CMD exec /usr/bin/startup
# Open up fcgi port
+++ /dev/null
-[global]
-; Override default pid file
-pid = /run/php-fpm.pid
-
-; Avoid logs being sent to syslog
-error_log = /proc/self/fd/2
-
-; Set this to php default's max_execution_time to allow children to stop gracefully when fpm is commanded to stop
-; This helps avoiding 502's
-process_control_timeout = 30
-
-; Do not daemonize (eg send process to the background)
-daemonize = no
-
-[www]
-; Access from webserver container is via network, not socket file
-listen = [::]:9000
-
-; Redirect logs to stdout - FPM closes /dev/std* on startup
-access.log = /proc/self/fd/1
-catch_workers_output = yes
-
-; Remove "pool www" decoration from log output (older phpdocker.io containers for php use sed for this)
-decorate_workers_output = no
-
-; Required to allow config-by-environment
-clear_env = no
-
-user = 1001
-group = 33
-
-pm = dynamic
-pm.max_children = 160
-pm.start_servers = 48
-pm.min_spare_servers = 40
-pm.max_spare_servers = 80
-pm.max_requests = 1000
+++ /dev/null
-#!/bin/sh
-
-# Set file rights
-umask 0000
-chmod -R 777 /tmp
-
-chown -R root:root /etc/sudoers.d
-chown -R toolbox:www-data /application/storage/framework
-chmod 755 /etc/ssh/*.d
-chmod 600 /etc/ssh/*_key
-chmod 750 /application
-chmod 600 /application/.ssh/id_rsa
-chmod 700 /application/.ssh/
-chmod 600 /application/.ssh/authorized_keys2
-chmod 600 /root/.ssh/id_rsa
-chmod 700 /root/.ssh/
-chmod 600 /root/.ssh/authorized_keys2
-
-# Rsyslog
-start-stop-daemon --start -b -x /usr/sbin/rsyslogd -- -n
-
-# SSH Server
-/usr/sbin/service ssh start
-
-# Supervisor
-/usr/sbin/service supervisor start
-
-# Cron
-chmod 0644 /etc/crontab && crontab -u root /etc/crontab && /usr/sbin/service cron start
-
-# Set user password
-chpasswd < /root/passwords
-
-# Launch monit
-chmod -R 700 /etc/monit;chown -R root:root /etc/monit;/usr/bin/monit
-chown -R root:root /etc/monit && /usr/bin/monit
-
-# Launch PHP
-/usr/sbin/php-fpm8.2 -O
# PHP-FPM packages need a nudge to make them docker-friendly
COPY overrides.conf /etc/php/8.2/fpm/pool.d/z-overrides.conf
-COPY startup /usr/bin/startup
CMD exec /usr/bin/startup
# Open up fcgi port
+++ /dev/null
-[global]
-; Override default pid file
-pid = /run/php-fpm.pid
-
-; Avoid logs being sent to syslog
-error_log = /proc/self/fd/2
-
-; Set this to php default's max_execution_time to allow children to stop gracefully when fpm is commanded to stop
-; This helps avoiding 502's
-process_control_timeout = 30
-
-; Do not daemonize (eg send process to the background)
-daemonize = no
-
-[www]
-; Access from webserver container is via network, not socket file
-listen = [::]:9000
-
-; Redirect logs to stdout - FPM closes /dev/std* on startup
-access.log = /proc/self/fd/1
-catch_workers_output = yes
-
-; Remove "pool www" decoration from log output (older phpdocker.io containers for php use sed for this)
-decorate_workers_output = no
-
-; Required to allow config-by-environment
-clear_env = no
-
-user = 1001
-group = 33
-
-pm = dynamic
-pm.max_children = 160
-pm.start_servers = 48
-pm.min_spare_servers = 40
-pm.max_spare_servers = 80
-pm.max_requests = 1000
+++ /dev/null
-#!/bin/sh
-
-# Set file rights
-umask 0000
-chmod -R 777 /tmp
-
-chown -R root:root /etc/sudoers.d
-chown -R toolbox:www-data /application/storage/framework
-chmod 755 /etc/ssh/*.d
-chmod 600 /etc/ssh/*_key
-chmod 750 /application
-chmod 600 /application/.ssh/id_rsa
-chmod 700 /application/.ssh/
-chmod 600 /application/.ssh/authorized_keys2
-chmod 600 /root/.ssh/id_rsa
-chmod 700 /root/.ssh/
-chmod 600 /root/.ssh/authorized_keys2
-
-# Rsyslog
-start-stop-daemon --start -b -x /usr/sbin/rsyslogd -- -n
-
-# SSH Server
-/usr/sbin/service ssh start
-
-# Supervisor
-/usr/sbin/service supervisor start
-
-# Cron
-chmod 0644 /etc/crontab && crontab -u root /etc/crontab && /usr/sbin/service cron start
-
-# Set user password
-chpasswd < /root/passwords
-
-# Launch monit
-chmod -R 700 /etc/monit;chown -R root:root /etc/monit;/usr/bin/monit
-chown -R root:root /etc/monit && /usr/bin/monit
-
-# Launch PHP
-/usr/sbin/php-fpm8.2 -O
#!/bin/sh
cd /docker/fluidbook-toolbox
+/home/toolbox/www/scripts/fixrights
chown root:root /home/toolbox/www/.docker/config/cron/host;ln -sf /home/toolbox/www/.docker/config/cron/host /etc/cron.d/toolbox
docker network create fluidbook-toolbox
docker compose down
-docker compose up -d
-docker exec -it fluidbook-toolbox /application/scripts/update
+docker -D -l debug compose up -d
/home/toolbox/www/scripts/fixrights
+docker exec -it fluidbook-toolbox /application/scripts/update
--- /dev/null
+#!/bin/sh
+
+# Set file rights
+umask 0000
+chmod -R 777 /tmp
+
+chown -R root:root /etc/sudoers.d
+chown -R toolbox:www-data /application/storage/framework
+chmod 755 /etc/ssh/*.d
+chmod 600 /etc/ssh/*_key
+chmod 750 /application
+chmod 600 /application/.ssh/id_rsa
+chmod 700 /application/.ssh/
+chmod 600 /application/.ssh/authorized_keys2
+chmod 600 /root/.ssh/id_rsa
+chmod 700 /root/.ssh/
+chmod 600 /root/.ssh/authorized_keys2
+
+# Rsyslog
+start-stop-daemon --start -b -x /usr/sbin/rsyslogd -- -n
+
+# SSH Server
+/usr/sbin/service ssh start
+
+# Supervisor
+/usr/sbin/service supervisor start
+
+# Cron
+chmod 0644 /etc/crontab && crontab -u root /etc/crontab && /usr/sbin/service cron start
+
+# Set user password
+chpasswd < /root/passwords
+
+# Launch monit
+chmod -R 700 /etc/monit;chown -R root:root /etc/monit;/usr/bin/monit
+chown -R root:root /etc/monit && /usr/bin/monit
+
+# Launch PHP
+/usr/sbin/php-fpm8.2 -O