mirror of
https://github.com/casjaysdevdocker/mysql
synced 2024-11-21 11:23:08 -05:00
🗃️ Committing everything that changed 🗃️
Some checks failed
release-tag / release-image (push) Failing after 0s
Some checks failed
release-tag / release-image (push) Failing after 0s
rootfs/root/docker/setup/03-files.sh rootfs/tmp/etc/nginx/nginx.conf rootfs/usr/local/etc/docker/init.d/00-mysqld.sh rootfs/usr/local/etc/docker/init.d/05-nginx.sh rootfs/usr/local/etc/docker/init.d/99-nginx.sh
This commit is contained in:
parent
8ff40028a0
commit
bff821dacc
@ -28,7 +28,13 @@ exitCode=0
|
|||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
# Main script
|
# Main script
|
||||||
[ -d "/tmp/etc" ] && copy "/tmp/etc/." "/etc/"
|
[ -d "/tmp/etc" ] && copy "/tmp/etc/." "/etc/"
|
||||||
|
[ -d "/etc/nginx/conf.d" ] || mkdir -p "/etc/nginx/conf.d"
|
||||||
[ -f "/etc/mysql/my.cnf" ] && symlink "/etc/mysql/my.cnf" "/etc/my.cnf"
|
[ -f "/etc/mysql/my.cnf" ] && symlink "/etc/mysql/my.cnf" "/etc/my.cnf"
|
||||||
|
cat <<EOF >/etc/nginx/conf.d/phpmyadmin.conf
|
||||||
|
location ^~ /phpmyadmin {
|
||||||
|
alias "REPLACE_PHPMYADMIN_WWW_ROOT;
|
||||||
|
}
|
||||||
|
EOF
|
||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
# Set the exit code
|
# Set the exit code
|
||||||
exitCode=$?
|
exitCode=$?
|
||||||
|
@ -1,82 +0,0 @@
|
|||||||
# nginx configuration for sites
|
|
||||||
|
|
||||||
user REPLACE_WWW_USER;
|
|
||||||
worker_processes auto;
|
|
||||||
daemon on;
|
|
||||||
error_log REPLACE_LOG_DIR/nginx.log warn;
|
|
||||||
pid REPLACE_RUN_DIR/nginx.pid;
|
|
||||||
events { worker_connections 1024; }
|
|
||||||
|
|
||||||
http {
|
|
||||||
include REPLACE_ETC_DIR/mime.types;
|
|
||||||
default_type "text/html";
|
|
||||||
sendfile on;
|
|
||||||
keepalive_timeout 65;
|
|
||||||
gzip on;
|
|
||||||
map $http_upgrade $connection_upgrade { default upgrade; '' close; }
|
|
||||||
disable_symlinks off;
|
|
||||||
|
|
||||||
server {
|
|
||||||
listen 0.0.0.0:80 default_server;
|
|
||||||
server_name REPLACE_SERVER_NAME;
|
|
||||||
client_max_body_size 0;
|
|
||||||
proxy_intercept_errors off;
|
|
||||||
add_header X-Frame-Options "SAMEORIGIN" always;
|
|
||||||
add_header X-XSS-Protection "1; mode=block" always;
|
|
||||||
add_header X-Content-Type-Options "nosniff" always;
|
|
||||||
add_header Referrer-Policy "no-referrer-when-downgrade" always;
|
|
||||||
add_header Content-Security-Policy "script-src 'self' 'unsafe-inline' 'unsafe-eval' *; frame-src 'self' *; object-src 'self'" always;
|
|
||||||
index index.php index.cgi index.pl index.aspx index.txt index.json index.html index.unknown.php index.default.php;
|
|
||||||
root /var/lib/nginx/html;
|
|
||||||
|
|
||||||
location /health {
|
|
||||||
default_type text/plain;
|
|
||||||
return 200 'ok';
|
|
||||||
}
|
|
||||||
location /health/text {
|
|
||||||
default_type text/plain;
|
|
||||||
return 200 'ok';
|
|
||||||
}
|
|
||||||
location /health/json {
|
|
||||||
default_type application/json;
|
|
||||||
return 200 '{"status":"ok","message":"running"}';
|
|
||||||
}
|
|
||||||
|
|
||||||
location ~ [^/]\.php(/|$) {
|
|
||||||
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
|
|
||||||
if (!-f $document_root$fastcgi_script_name) {
|
|
||||||
return 404;
|
|
||||||
}
|
|
||||||
fastcgi_param HTTP_PROXY "";
|
|
||||||
fastcgi_pass 127.0.0.1:9000;
|
|
||||||
fastcgi_index index.php;
|
|
||||||
fastcgi_param QUERY_STRING $query_string;
|
|
||||||
fastcgi_param REQUEST_METHOD $request_method;
|
|
||||||
fastcgi_param CONTENT_TYPE $content_type;
|
|
||||||
fastcgi_param CONTENT_LENGTH $content_length;
|
|
||||||
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
|
|
||||||
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
|
||||||
fastcgi_param REQUEST_URI $request_uri;
|
|
||||||
fastcgi_param DOCUMENT_URI $document_uri;
|
|
||||||
fastcgi_param DOCUMENT_ROOT $document_root;
|
|
||||||
fastcgi_param SERVER_PROTOCOL $server_protocol;
|
|
||||||
fastcgi_param REQUEST_SCHEME $scheme;
|
|
||||||
fastcgi_param HTTPS $https if_not_empty;
|
|
||||||
fastcgi_param GATEWAY_INTERFACE CGI/1.1;
|
|
||||||
fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;
|
|
||||||
fastcgi_param REMOTE_ADDR $remote_addr;
|
|
||||||
fastcgi_param REMOTE_PORT $remote_port;
|
|
||||||
fastcgi_param SERVER_ADDR $server_addr;
|
|
||||||
fastcgi_param SERVER_PORT $server_port;
|
|
||||||
fastcgi_param SERVER_NAME $server_name;
|
|
||||||
fastcgi_param REDIRECT_STATUS 200;
|
|
||||||
}
|
|
||||||
|
|
||||||
location / {
|
|
||||||
root REPLACE_PHPMYADMIN_WWW_ROOT;
|
|
||||||
}
|
|
||||||
|
|
||||||
location /phpmyadmin {
|
|
||||||
alias /usr/share/phpmyadmin;
|
|
||||||
}
|
|
||||||
}
|
|
@ -107,7 +107,7 @@ SERVICE_GROUP="mysql" # Set the service group
|
|||||||
#SERVICE_GID="0" # set the group id
|
#SERVICE_GID="0" # set the group id
|
||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
# execute command variables - keep single quotes variables will be expanded later
|
# execute command variables - keep single quotes variables will be expanded later
|
||||||
EXEC_CMD_BIN='mysqld' # command to execute
|
EXEC_CMD_BIN='mariadbd' # command to execute
|
||||||
EXEC_CMD_ARGS='--user=$SERVICE_USER --datadir=$DATABASE_DIR' # command arguments
|
EXEC_CMD_ARGS='--user=$SERVICE_USER --datadir=$DATABASE_DIR' # command arguments
|
||||||
EXEC_PRE_SCRIPT='' # execute script before
|
EXEC_PRE_SCRIPT='' # execute script before
|
||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
@ -266,6 +266,7 @@ __post_execute() {
|
|||||||
local sysname="${SERVER_NAME:-${FULL_DOMAIN_NAME:-$HOSTNAME}}" # set hostname
|
local sysname="${SERVER_NAME:-${FULL_DOMAIN_NAME:-$HOSTNAME}}" # set hostname
|
||||||
local root_user_pass="${root_user_pass:-$DATABASE_ROOT_PASSWORD:-$}"
|
local root_user_pass="${root_user_pass:-$DATABASE_ROOT_PASSWORD:-$}"
|
||||||
local DATABASE_ROOT_PASSWORD="${root_user_pass:-$(__random_password)}"
|
local DATABASE_ROOT_PASSWORD="${root_user_pass:-$(__random_password)}"
|
||||||
|
db_root_user="${MYSQL_ROOT_USER_NAME:-root}"
|
||||||
echo "$DATABASE_ROOT_PASSWORD" >"${ROOT_FILE_PREFIX}/${SERVICE_NAME}_pass"
|
echo "$DATABASE_ROOT_PASSWORD" >"${ROOT_FILE_PREFIX}/${SERVICE_NAME}_pass"
|
||||||
# wait
|
# wait
|
||||||
sleep $waitTime
|
sleep $waitTime
|
||||||
@ -278,25 +279,29 @@ __post_execute() {
|
|||||||
bash -c "$CONF_DIR/mysql/init.sh"
|
bash -c "$CONF_DIR/mysql/init.sh"
|
||||||
fi
|
fi
|
||||||
if [ -n "$DATABASE_CREATE" ]; then
|
if [ -n "$DATABASE_CREATE" ]; then
|
||||||
mysql -v -u $SERVICE_USER <<MYSQL_SCRIPT
|
mariadb -v -u $db_root_user <<MYSQL_SCRIPT
|
||||||
CREATE DATABASE IF NOT EXISTS $DATABASE_CREATE;
|
CREATE DATABASE IF NOT EXISTS $DATABASE_CREATE;
|
||||||
MYSQL_SCRIPT
|
MYSQL_SCRIPT
|
||||||
fi
|
fi
|
||||||
if [ "$user_name" != "root" ] && [ -n "$user_name" ]; then
|
if [ "$user_name" != "root" ] && [ -n "$user_name" ]; then
|
||||||
mysql -v -u $SERVICE_USER <<MYSQL_SCRIPT
|
mariadb -v -u $db_root_user <<MYSQL_SCRIPT
|
||||||
CREATE USER IF NOT EXISTS '$user_name'@'%' IDENTIFIED BY '$user_pass';
|
CREATE USER IF NOT EXISTS '$user_name'@'%' IDENTIFIED BY '$user_pass';
|
||||||
MYSQL_SCRIPT
|
MYSQL_SCRIPT
|
||||||
fi
|
fi
|
||||||
if [ "$user_name" != "root" ] && [ -n "$DATABASE_CREATE" ]; then
|
if [ "$user_name" != "root" ] && [ -n "$DATABASE_CREATE" ]; then
|
||||||
mysql -v -u $SERVICE_USER <<MYSQL_SCRIPT
|
mariadb -v -u $db_root_user <<MYSQL_SCRIPT
|
||||||
GRANT ALL PRIVILEGES ON $DATABASE_CREATE.* TO '$user_name'@'%';
|
GRANT ALL PRIVILEGES ON $DATABASE_CREATE.* TO '$user_name'@'%';
|
||||||
MYSQL_SCRIPT
|
MYSQL_SCRIPT
|
||||||
elif [ "$user_name" = "root" ] && [ -n "$DATABASE_CREATE" ]; then
|
elif [ "$user_name" = "root" ] && [ -n "$DATABASE_CREATE" ]; then
|
||||||
mysql -v -u $SERVICE_USER <<MYSQL_SCRIPT
|
mariadb -v -u $db_root_user <<MYSQL_SCRIPT
|
||||||
GRANT ALL PRIVILEGES ON $DATABASE_CREATE.* TO 'root'@'localhost';
|
GRANT ALL PRIVILEGES ON $DATABASE_CREATE.* TO 'root'@'localhost';
|
||||||
MYSQL_SCRIPT
|
MYSQL_SCRIPT
|
||||||
fi
|
fi
|
||||||
mysql -v -u $SERVICE_USER <<MYSQL_SCRIPT
|
mariadb -v -u $db_root_user <<MYSQL_SCRIPT
|
||||||
|
CREATE USER IF NOT EXISTS 'root'@'%' IDENTIFIED BY '$DATABASE_ROOT_PASSWORD';
|
||||||
|
MYSQL_SCRIPT
|
||||||
|
mariadb -v -u $db_root_user <<MYSQL_SCRIPT
|
||||||
|
ALTER USER 'root'@'%' IDENTIFIED BY '$DATABASE_ROOT_PASSWORD';
|
||||||
ALTER USER 'root'@'localhost' IDENTIFIED BY '$DATABASE_ROOT_PASSWORD';
|
ALTER USER 'root'@'localhost' IDENTIFIED BY '$DATABASE_ROOT_PASSWORD';
|
||||||
FLUSH PRIVILEGES;
|
FLUSH PRIVILEGES;
|
||||||
MYSQL_SCRIPT
|
MYSQL_SCRIPT
|
||||||
|
@ -1,14 +1,14 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
# shellcheck shell=bash
|
# shellcheck shell=bash
|
||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
##@Version : 202408111915-git
|
##@Version : 202408101458-git
|
||||||
# @@Author : Jason Hempstead
|
# @@Author : Jason Hempstead
|
||||||
# @@Contact : jason@casjaysdev.pro
|
# @@Contact : jason@casjaysdev.pro
|
||||||
# @@License : WTFPL
|
# @@License : WTFPL
|
||||||
# @@ReadME : 05-nginx.sh --help
|
# @@ReadME : 00-nginx.sh --help
|
||||||
# @@Copyright : Copyright: (c) 2024 Jason Hempstead, Casjays Developments
|
# @@Copyright : Copyright: (c) 2024 Jason Hempstead, Casjays Developments
|
||||||
# @@Created : Sunday, Aug 11, 2024 19:15 EDT
|
# @@Created : Saturday, Aug 10, 2024 14:58 EDT
|
||||||
# @@File : 05-nginx.sh
|
# @@File : 00-nginx.sh
|
||||||
# @@Description :
|
# @@Description :
|
||||||
# @@Changelog : New script
|
# @@Changelog : New script
|
||||||
# @@TODO : Better documentation
|
# @@TODO : Better documentation
|
||||||
@ -73,7 +73,7 @@ DATABASE_BASE_DIR="${DATABASE_BASE_DIR:-/data/db}"
|
|||||||
DATABASE_DIR="${DATABASE_DIR_NGINX:-$DATABASE_BASE_DIR/sqlite}"
|
DATABASE_DIR="${DATABASE_DIR_NGINX:-$DATABASE_BASE_DIR/sqlite}"
|
||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
# Set webroot
|
# Set webroot
|
||||||
WWW_ROOT_DIR="/usr/share/httpd/default"
|
WWW_ROOT_DIR="/var/lib/nginx/html"
|
||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
# Default predefined variables
|
# Default predefined variables
|
||||||
DATA_DIR="/data/nginx" # set data directory
|
DATA_DIR="/data/nginx" # set data directory
|
||||||
@ -99,8 +99,8 @@ SERVICE_PORT="80"
|
|||||||
RUNAS_USER="root" # normally root
|
RUNAS_USER="root" # normally root
|
||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
# User and group in which the service switches to - IE: nginx,apache,mysql,postgres
|
# User and group in which the service switches to - IE: nginx,apache,mysql,postgres
|
||||||
#SERVICE_USER="nginx" # execute command as another user
|
SERVICE_USER="nginx" # execute command as another user
|
||||||
#SERVICE_GROUP="nginx" # Set the service group
|
SERVICE_GROUP="nginx" # Set the service group
|
||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
# Set user and group ID
|
# Set user and group ID
|
||||||
#SERVICE_UID="0" # set the user id
|
#SERVICE_UID="0" # set the user id
|
||||||
@ -108,7 +108,7 @@ RUNAS_USER="root" # normally root
|
|||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
# execute command variables - keep single quotes variables will be expanded later
|
# execute command variables - keep single quotes variables will be expanded later
|
||||||
EXEC_CMD_BIN='nginx' # command to execute
|
EXEC_CMD_BIN='nginx' # command to execute
|
||||||
EXEC_CMD_ARGS='-c $ETC_DIR/nginx.conf' # command arguments
|
EXEC_CMD_ARGS='-c $CONF_DIR/nginx.conf' # command arguments
|
||||||
EXEC_PRE_SCRIPT='' # execute script before
|
EXEC_PRE_SCRIPT='' # execute script before
|
||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
# Is this service a web server
|
# Is this service a web server
|
||||||
@ -146,7 +146,7 @@ user_pass="${NGINX_USER_PASS_WORD:-}" # normal user password
|
|||||||
|
|
||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
# Additional variables
|
# Additional variables
|
||||||
|
PHPMYADMIN_WWW_ROOT="/usr/share/phpmyadmin"
|
||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
# Specifiy custom directories to be created
|
# Specifiy custom directories to be created
|
||||||
ADD_APPLICATION_FILES=""
|
ADD_APPLICATION_FILES=""
|
||||||
@ -165,7 +165,7 @@ CMD_ENV=""
|
|||||||
|
|
||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
# Per Application Variables or imports
|
# Per Application Variables or imports
|
||||||
PHPMYADMIN_WWW_ROOT="/usr/share/phpmyadmin"
|
|
||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
# Custom prerun functions - IE setup WWW_ROOT_DIR
|
# Custom prerun functions - IE setup WWW_ROOT_DIR
|
||||||
__execute_prerun() {
|
__execute_prerun() {
|
||||||
@ -173,7 +173,8 @@ __execute_prerun() {
|
|||||||
__init_config_etc
|
__init_config_etc
|
||||||
|
|
||||||
# Define other actions/commands
|
# Define other actions/commands
|
||||||
|
mkdir -p "$CONF_DIR/conf.d" "$CONF_DIR/sites-enabled" "$CONF_DIR/streams-enabled" "$CONF_DIR/sites-available"
|
||||||
|
mkdir -p "$ETC_DIR/conf.d" "$ETC_DIR/sites-enabled" "$ETC_DIR/streams-enabled" "$ETC_DIR/sites-available" "$WWW_ROOT_DIR/.well-known"
|
||||||
}
|
}
|
||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
# Run any pre-execution checks
|
# Run any pre-execution checks
|
||||||
@ -215,13 +216,13 @@ __update_conf_files() {
|
|||||||
|
|
||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
# replace variables
|
# replace variables
|
||||||
__replace "REPLACE_PHPMYADMIN_WWW_ROOT" "$PHPMYADMIN_WWW_ROOT" "$CONF_DIR/nginx.conf"
|
# __replace "" "" "$CONF_DIR/nginx.conf"
|
||||||
# replace variables recursively
|
# replace variables recursively
|
||||||
# __find_replace "" "" "$CONF_DIR"
|
# __find_replace "" "" "$CONF_DIR"
|
||||||
|
|
||||||
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
# define actions
|
# define actions
|
||||||
|
__replace "REPLACE_PHPMYADMIN_WWW_ROOT" "$PHPMYADMIN_WWW_ROOT" "$CONF_DIR/conf.d/phpmyadmin.conf"
|
||||||
# exit function
|
# exit function
|
||||||
return $exitCode
|
return $exitCode
|
||||||
}
|
}
|
Loading…
Reference in New Issue
Block a user