2
0
Fork 0
mirror of https://github.com/friendica/docker synced 2025-12-07 22:07:09 +01:00

Adding setup_database.sh script to initialize the database connection settings.

This commit is contained in:
ne20002 2025-07-06 11:43:27 +00:00
commit 47ca0338ac
No known key found for this signature in database
GPG key ID: 429E95F6E49B54C8
21 changed files with 171 additions and 1 deletions

View file

@ -40,6 +40,7 @@ file_env() {
}
sh /setup_msmtp.sh
sh /setup_database.sh
# just check if we execute apache or php-fpm
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ]; then

View file

@ -0,0 +1,16 @@
#!/bin/sh
set -eu
if [ -f /var/www/html/config/local.config.php ]; then
if [ -n "$MYSQL_HOST" ] && [ -n "$MYSQL_USER" ] && [ -n "$MYSQL_PASSWORD" ] && [ -n "$MYSQL_DATABASE" ]; then
echo "Setting up database as '$MYSQL_DATABASE' on '$MYSQL_HOST' with user '$MYSQL_USER'..."
sed -i "/'database' => \[/,/\],/s/\('hostname' => \s*\)\('[^']*'\)/\1'${MYSQL_HOST}'/" /var/www/html/config/local.config.php
sed -i "/'database' => \[/,/\],/s/\('username' => \s*\)\('[^']*'\)/\1'${MYSQL_USER}'/" /var/www/html/config/local.config.php
sed -i "/'database' => \[/,/\],/s/\('password' => \s*\)\('[^']*'\)/\1'${MYSQL_PASSWORD}'/" /var/www/html/config/local.config.php
sed -i "/'database' => \[/,/\],/s/\('database' => \s*\)\('[^']*'\)/\1'${MYSQL_DATABASE}'/" /var/www/html/config/local.config.php
echo "Database setup finished"
fi
fi

View file

@ -40,6 +40,7 @@ file_env() {
}
sh /setup_msmtp.sh
sh /setup_database.sh
# just check if we execute apache or php-fpm
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ]; then

View file

@ -0,0 +1,16 @@
#!/bin/sh
set -eu
if [ -f /var/www/html/config/local.config.php ]; then
if [ -n "$MYSQL_HOST" ] && [ -n "$MYSQL_USER" ] && [ -n "$MYSQL_PASSWORD" ] && [ -n "$MYSQL_DATABASE" ]; then
echo "Setting up database as '$MYSQL_DATABASE' on '$MYSQL_HOST' with user '$MYSQL_USER'..."
sed -i "/'database' => \[/,/\],/s/\('hostname' => \s*\)\('[^']*'\)/\1'${MYSQL_HOST}'/" /var/www/html/config/local.config.php
sed -i "/'database' => \[/,/\],/s/\('username' => \s*\)\('[^']*'\)/\1'${MYSQL_USER}'/" /var/www/html/config/local.config.php
sed -i "/'database' => \[/,/\],/s/\('password' => \s*\)\('[^']*'\)/\1'${MYSQL_PASSWORD}'/" /var/www/html/config/local.config.php
sed -i "/'database' => \[/,/\],/s/\('database' => \s*\)\('[^']*'\)/\1'${MYSQL_DATABASE}'/" /var/www/html/config/local.config.php
echo "Database setup finished"
fi
fi

View file

@ -40,6 +40,7 @@ file_env() {
}
sh /setup_msmtp.sh
sh /setup_database.sh
# just check if we execute apache or php-fpm
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ]; then

16
2024.12/fpm/setup_database.sh Executable file
View file

@ -0,0 +1,16 @@
#!/bin/sh
set -eu
if [ -f /var/www/html/config/local.config.php ]; then
if [ -n "$MYSQL_HOST" ] && [ -n "$MYSQL_USER" ] && [ -n "$MYSQL_PASSWORD" ] && [ -n "$MYSQL_DATABASE" ]; then
echo "Setting up database as '$MYSQL_DATABASE' on '$MYSQL_HOST' with user '$MYSQL_USER'..."
sed -i "/'database' => \[/,/\],/s/\('hostname' => \s*\)\('[^']*'\)/\1'${MYSQL_HOST}'/" /var/www/html/config/local.config.php
sed -i "/'database' => \[/,/\],/s/\('username' => \s*\)\('[^']*'\)/\1'${MYSQL_USER}'/" /var/www/html/config/local.config.php
sed -i "/'database' => \[/,/\],/s/\('password' => \s*\)\('[^']*'\)/\1'${MYSQL_PASSWORD}'/" /var/www/html/config/local.config.php
sed -i "/'database' => \[/,/\],/s/\('database' => \s*\)\('[^']*'\)/\1'${MYSQL_DATABASE}'/" /var/www/html/config/local.config.php
echo "Database setup finished"
fi
fi

View file

@ -40,6 +40,7 @@ file_env() {
}
sh /setup_msmtp.sh
sh /setup_database.sh
# just check if we execute apache or php-fpm
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ]; then

View file

@ -0,0 +1,16 @@
#!/bin/sh
set -eu
if [ -f /var/www/html/config/local.config.php ]; then
if [ -n "$MYSQL_HOST" ] && [ -n "$MYSQL_USER" ] && [ -n "$MYSQL_PASSWORD" ] && [ -n "$MYSQL_DATABASE" ]; then
echo "Setting up database as '$MYSQL_DATABASE' on '$MYSQL_HOST' with user '$MYSQL_USER'..."
sed -i "/'database' => \[/,/\],/s/\('hostname' => \s*\)\('[^']*'\)/\1'${MYSQL_HOST}'/" /var/www/html/config/local.config.php
sed -i "/'database' => \[/,/\],/s/\('username' => \s*\)\('[^']*'\)/\1'${MYSQL_USER}'/" /var/www/html/config/local.config.php
sed -i "/'database' => \[/,/\],/s/\('password' => \s*\)\('[^']*'\)/\1'${MYSQL_PASSWORD}'/" /var/www/html/config/local.config.php
sed -i "/'database' => \[/,/\],/s/\('database' => \s*\)\('[^']*'\)/\1'${MYSQL_DATABASE}'/" /var/www/html/config/local.config.php
echo "Database setup finished"
fi
fi

View file

@ -40,6 +40,7 @@ file_env() {
}
sh /setup_msmtp.sh
sh /setup_database.sh
# just check if we execute apache or php-fpm
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ]; then

View file

@ -0,0 +1,16 @@
#!/bin/sh
set -eu
if [ -f /var/www/html/config/local.config.php ]; then
if [ -n "$MYSQL_HOST" ] && [ -n "$MYSQL_USER" ] && [ -n "$MYSQL_PASSWORD" ] && [ -n "$MYSQL_DATABASE" ]; then
echo "Setting up database as '$MYSQL_DATABASE' on '$MYSQL_HOST' with user '$MYSQL_USER'..."
sed -i "/'database' => \[/,/\],/s/\('hostname' => \s*\)\('[^']*'\)/\1'${MYSQL_HOST}'/" /var/www/html/config/local.config.php
sed -i "/'database' => \[/,/\],/s/\('username' => \s*\)\('[^']*'\)/\1'${MYSQL_USER}'/" /var/www/html/config/local.config.php
sed -i "/'database' => \[/,/\],/s/\('password' => \s*\)\('[^']*'\)/\1'${MYSQL_PASSWORD}'/" /var/www/html/config/local.config.php
sed -i "/'database' => \[/,/\],/s/\('database' => \s*\)\('[^']*'\)/\1'${MYSQL_DATABASE}'/" /var/www/html/config/local.config.php
echo "Database setup finished"
fi
fi

View file

@ -40,6 +40,7 @@ file_env() {
}
sh /setup_msmtp.sh
sh /setup_database.sh
# just check if we execute apache or php-fpm
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ]; then

View file

@ -0,0 +1,16 @@
#!/bin/sh
set -eu
if [ -f /var/www/html/config/local.config.php ]; then
if [ -n "$MYSQL_HOST" ] && [ -n "$MYSQL_USER" ] && [ -n "$MYSQL_PASSWORD" ] && [ -n "$MYSQL_DATABASE" ]; then
echo "Setting up database as '$MYSQL_DATABASE' on '$MYSQL_HOST' with user '$MYSQL_USER'..."
sed -i "/'database' => \[/,/\],/s/\('hostname' => \s*\)\('[^']*'\)/\1'${MYSQL_HOST}'/" /var/www/html/config/local.config.php
sed -i "/'database' => \[/,/\],/s/\('username' => \s*\)\('[^']*'\)/\1'${MYSQL_USER}'/" /var/www/html/config/local.config.php
sed -i "/'database' => \[/,/\],/s/\('password' => \s*\)\('[^']*'\)/\1'${MYSQL_PASSWORD}'/" /var/www/html/config/local.config.php
sed -i "/'database' => \[/,/\],/s/\('database' => \s*\)\('[^']*'\)/\1'${MYSQL_DATABASE}'/" /var/www/html/config/local.config.php
echo "Database setup finished"
fi
fi

View file

@ -40,6 +40,7 @@ file_env() {
}
sh /setup_msmtp.sh
sh /setup_database.sh
# just check if we execute apache or php-fpm
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ]; then

View file

@ -0,0 +1,16 @@
#!/bin/sh
set -eu
if [ -f /var/www/html/config/local.config.php ]; then
if [ -n "$MYSQL_HOST" ] && [ -n "$MYSQL_USER" ] && [ -n "$MYSQL_PASSWORD" ] && [ -n "$MYSQL_DATABASE" ]; then
echo "Setting up database as '$MYSQL_DATABASE' on '$MYSQL_HOST' with user '$MYSQL_USER'..."
sed -i "/'database' => \[/,/\],/s/\('hostname' => \s*\)\('[^']*'\)/\1'${MYSQL_HOST}'/" /var/www/html/config/local.config.php
sed -i "/'database' => \[/,/\],/s/\('username' => \s*\)\('[^']*'\)/\1'${MYSQL_USER}'/" /var/www/html/config/local.config.php
sed -i "/'database' => \[/,/\],/s/\('password' => \s*\)\('[^']*'\)/\1'${MYSQL_PASSWORD}'/" /var/www/html/config/local.config.php
sed -i "/'database' => \[/,/\],/s/\('database' => \s*\)\('[^']*'\)/\1'${MYSQL_DATABASE}'/" /var/www/html/config/local.config.php
echo "Database setup finished"
fi
fi

View file

@ -40,6 +40,7 @@ file_env() {
}
sh /setup_msmtp.sh
sh /setup_database.sh
# just check if we execute apache or php-fpm
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ]; then

View file

@ -0,0 +1,16 @@
#!/bin/sh
set -eu
if [ -f /var/www/html/config/local.config.php ]; then
if [ -n "$MYSQL_HOST" ] && [ -n "$MYSQL_USER" ] && [ -n "$MYSQL_PASSWORD" ] && [ -n "$MYSQL_DATABASE" ]; then
echo "Setting up database as '$MYSQL_DATABASE' on '$MYSQL_HOST' with user '$MYSQL_USER'..."
sed -i "/'database' => \[/,/\],/s/\('hostname' => \s*\)\('[^']*'\)/\1'${MYSQL_HOST}'/" /var/www/html/config/local.config.php
sed -i "/'database' => \[/,/\],/s/\('username' => \s*\)\('[^']*'\)/\1'${MYSQL_USER}'/" /var/www/html/config/local.config.php
sed -i "/'database' => \[/,/\],/s/\('password' => \s*\)\('[^']*'\)/\1'${MYSQL_PASSWORD}'/" /var/www/html/config/local.config.php
sed -i "/'database' => \[/,/\],/s/\('database' => \s*\)\('[^']*'\)/\1'${MYSQL_DATABASE}'/" /var/www/html/config/local.config.php
echo "Database setup finished"
fi
fi

View file

@ -40,6 +40,7 @@ file_env() {
}
sh /setup_msmtp.sh
sh /setup_database.sh
# just check if we execute apache or php-fpm
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ]; then

View file

@ -0,0 +1,16 @@
#!/bin/sh
set -eu
if [ -f /var/www/html/config/local.config.php ]; then
if [ -n "$MYSQL_HOST" ] && [ -n "$MYSQL_USER" ] && [ -n "$MYSQL_PASSWORD" ] && [ -n "$MYSQL_DATABASE" ]; then
echo "Setting up database as '$MYSQL_DATABASE' on '$MYSQL_HOST' with user '$MYSQL_USER'..."
sed -i "/'database' => \[/,/\],/s/\('hostname' => \s*\)\('[^']*'\)/\1'${MYSQL_HOST}'/" /var/www/html/config/local.config.php
sed -i "/'database' => \[/,/\],/s/\('username' => \s*\)\('[^']*'\)/\1'${MYSQL_USER}'/" /var/www/html/config/local.config.php
sed -i "/'database' => \[/,/\],/s/\('password' => \s*\)\('[^']*'\)/\1'${MYSQL_PASSWORD}'/" /var/www/html/config/local.config.php
sed -i "/'database' => \[/,/\],/s/\('database' => \s*\)\('[^']*'\)/\1'${MYSQL_DATABASE}'/" /var/www/html/config/local.config.php
echo "Database setup finished"
fi
fi

View file

@ -40,6 +40,7 @@ file_env() {
}
sh /setup_msmtp.sh
sh /setup_database.sh
# just check if we execute apache or php-fpm
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ]; then

16
docker-setup_database.sh Executable file
View file

@ -0,0 +1,16 @@
#!/bin/sh
set -eu
if [ -f /var/www/html/config/local.config.php ]; then
if [ -n "$MYSQL_HOST" ] && [ -n "$MYSQL_USER" ] && [ -n "$MYSQL_PASSWORD" ] && [ -n "$MYSQL_DATABASE" ]; then
echo "Setting up database as '$MYSQL_DATABASE' on '$MYSQL_HOST' with user '$MYSQL_USER'..."
sed -i "/'database' => \[/,/\],/s/\('hostname' => \s*\)\('[^']*'\)/\1'${MYSQL_HOST}'/" /var/www/html/config/local.config.php
sed -i "/'database' => \[/,/\],/s/\('username' => \s*\)\('[^']*'\)/\1'${MYSQL_USER}'/" /var/www/html/config/local.config.php
sed -i "/'database' => \[/,/\],/s/\('password' => \s*\)\('[^']*'\)/\1'${MYSQL_PASSWORD}'/" /var/www/html/config/local.config.php
sed -i "/'database' => \[/,/\],/s/\('database' => \s*\)\('[^']*'\)/\1'${MYSQL_DATABASE}'/" /var/www/html/config/local.config.php
echo "Database setup finished"
fi
fi

View file

@ -240,7 +240,7 @@ function create_variant() {
s/%%TINI_VERSION%%/'"${tini_version}"'/g;
' "$dir/Dockerfile"
for name in entrypoint cron setup_msmtp; do
for name in entrypoint cron setup_msmtp setup_database; do
cp "docker-$name.sh" "$dir/$name.sh"
done