first commit
This commit is contained in:
32
rootfs/opt/bitnami/scripts/dokuwiki/entrypoint.sh
Executable file
32
rootfs/opt/bitnami/scripts/dokuwiki/entrypoint.sh
Executable file
@ -0,0 +1,32 @@
|
||||
#!/bin/bash
|
||||
# Copyright Broadcom, Inc. All Rights Reserved.
|
||||
# SPDX-License-Identifier: APACHE-2.0
|
||||
|
||||
# shellcheck disable=SC1091
|
||||
|
||||
set -o errexit
|
||||
set -o nounset
|
||||
set -o pipefail
|
||||
# set -o xtrace # Uncomment this line for debugging purposes
|
||||
|
||||
# Load DokuWiki environment
|
||||
. /opt/bitnami/scripts/dokuwiki-env.sh
|
||||
|
||||
# Load libraries
|
||||
. /opt/bitnami/scripts/libbitnami.sh
|
||||
. /opt/bitnami/scripts/liblog.sh
|
||||
. /opt/bitnami/scripts/libwebserver.sh
|
||||
|
||||
print_welcome_page
|
||||
|
||||
if [[ "$1" = "/opt/bitnami/scripts/$(web_server_type)/run.sh" || "$1" = "/opt/bitnami/scripts/nginx-php-fpm/run.sh" ]]; then
|
||||
info "** Starting DokuWiki setup **"
|
||||
/opt/bitnami/scripts/"$(web_server_type)"/setup.sh
|
||||
/opt/bitnami/scripts/php/setup.sh
|
||||
/opt/bitnami/scripts/dokuwiki/setup.sh
|
||||
/post-init.sh
|
||||
info "** DokuWiki setup finished! **"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
exec "$@"
|
63
rootfs/opt/bitnami/scripts/dokuwiki/postunpack.sh
Executable file
63
rootfs/opt/bitnami/scripts/dokuwiki/postunpack.sh
Executable file
@ -0,0 +1,63 @@
|
||||
#!/bin/bash
|
||||
# Copyright Broadcom, Inc. All Rights Reserved.
|
||||
# SPDX-License-Identifier: APACHE-2.0
|
||||
|
||||
# shellcheck disable=SC1090,SC1091
|
||||
|
||||
set -o errexit
|
||||
set -o nounset
|
||||
set -o pipefail
|
||||
# set -o xtrace # Uncomment this line for debugging purposes
|
||||
|
||||
# Load DokuWiki environment
|
||||
. /opt/bitnami/scripts/dokuwiki-env.sh
|
||||
|
||||
# Load PHP environment for 'php_conf_set' (after 'dokuwiki-env.sh' so that MODULE is not set to a wrong value)
|
||||
. /opt/bitnami/scripts/php-env.sh
|
||||
|
||||
# Load libraries
|
||||
. /opt/bitnami/scripts/libdokuwiki.sh
|
||||
. /opt/bitnami/scripts/libfile.sh
|
||||
. /opt/bitnami/scripts/libfs.sh
|
||||
. /opt/bitnami/scripts/liblog.sh
|
||||
. /opt/bitnami/scripts/libphp.sh
|
||||
. /opt/bitnami/scripts/libwebserver.sh
|
||||
|
||||
# Load web server environment and functions (after DokuWiki environment file so MODULE is not set to a wrong value)
|
||||
. "/opt/bitnami/scripts/$(web_server_type)-env.sh"
|
||||
|
||||
# Ensure the DokuWiki base directory exists and has proper permissions
|
||||
info "Configuring file permissions for DokuWiki"
|
||||
ensure_user_exists "$WEB_SERVER_DAEMON_USER" --group "$WEB_SERVER_DAEMON_GROUP"
|
||||
for dir in "$DOKUWIKI_BASE_DIR" "$DOKUWIKI_VOLUME_DIR" "${DOKUWIKI_BASE_DIR}/lib/images/smileys/local" "${DOKUWIKI_BASE_DIR}/uploads"; do
|
||||
ensure_dir_exists "$dir"
|
||||
# Use daemon:root ownership for compatibility when running as a non-root user
|
||||
configure_permissions_ownership "$dir" -d "775" -f "664" -u "$WEB_SERVER_DAEMON_USER" -g "root"
|
||||
done
|
||||
|
||||
# Configure memory limit for PHP
|
||||
info "Configuring default PHP options for DokuWiki"
|
||||
php_conf_set memory_limit "$PHP_DEFAULT_MEMORY_LIMIT"
|
||||
|
||||
# Enable default web server configuration for DokuWiki
|
||||
info "Creating default web server configuration for DokuWiki"
|
||||
web_server_validate
|
||||
# shellcheck disable=SC2016
|
||||
ensure_web_server_app_configuration_exists "dokuwiki" --type php --apache-extra-directory-configuration '
|
||||
# Enable DokuWiki friendly URLs - Based on https://www.dokuwiki.org/rewrite
|
||||
RewriteEngine on
|
||||
RewriteRule ^_media/(.*) lib/exe/fetch.php?media=$1 [QSA,L]
|
||||
RewriteRule ^_detail/(.*) lib/exe/detail.php?media=$1 [QSA,L]
|
||||
RewriteRule ^_export/([^/]+)/(.*) doku.php?do=export_$1&id=$2 [QSA,L]
|
||||
RewriteRule ^$ doku.php [L]
|
||||
RewriteCond %{REQUEST_FILENAME} !-f
|
||||
RewriteCond %{REQUEST_FILENAME} !-d
|
||||
# Fix: DokuWiki rewrite rule affects Apache server-status page and makes it return a DokuWiki 404 page instead
|
||||
RewriteCond %{REQUEST_URI} !^/server-status$
|
||||
RewriteRule (.*) doku.php?id=$1 [QSA,L]
|
||||
RewriteRule ^index.php$ doku.php
|
||||
'
|
||||
|
||||
# Copy all initially generated configuration files to the default directory
|
||||
# (this is to avoid breaking when entrypoint is being overridden)
|
||||
cp -r "/opt/bitnami/$(web_server_type)/conf"/* "/opt/bitnami/$(web_server_type)/conf.default"
|
29
rootfs/opt/bitnami/scripts/dokuwiki/setup.sh
Executable file
29
rootfs/opt/bitnami/scripts/dokuwiki/setup.sh
Executable file
@ -0,0 +1,29 @@
|
||||
#!/bin/bash
|
||||
# Copyright Broadcom, Inc. All Rights Reserved.
|
||||
# SPDX-License-Identifier: APACHE-2.0
|
||||
|
||||
# shellcheck disable=SC1090,SC1091
|
||||
|
||||
set -o errexit
|
||||
set -o nounset
|
||||
set -o pipefail
|
||||
# set -o xtrace # Uncomment this line for debugging purposes
|
||||
|
||||
# Load DokuWiki environment
|
||||
. /opt/bitnami/scripts/dokuwiki-env.sh
|
||||
|
||||
# Load libraries
|
||||
. /opt/bitnami/scripts/libdokuwiki.sh
|
||||
. /opt/bitnami/scripts/libwebserver.sh
|
||||
|
||||
# Load web server environment and functions (after DokuWiki environment file so MODULE is not set to a wrong value)
|
||||
. "/opt/bitnami/scripts/$(web_server_type)-env.sh"
|
||||
|
||||
# Ensure DokuWiki environment variables are valid
|
||||
dokuwiki_validate
|
||||
|
||||
# Update web server configuration with runtime environment (needs to happen before the initialization)
|
||||
web_server_update_app_configuration "dokuwiki"
|
||||
|
||||
# Ensure DokuWiki is initialized
|
||||
dokuwiki_initialize
|
Reference in New Issue
Block a user