mirror of
https://github.com/10h30/ols-docker-env.git
synced 2026-05-12 15:21:24 +09:00
Merge branch 'master' of https://github.com/litespeedtech/ols-docker-env
This commit is contained in:
Executable → Regular
+2
-2
@@ -4,7 +4,7 @@ DOMAIN=''
|
||||
|
||||
help_message(){
|
||||
echo 'Command [-app app_name] [-domain domain_name]'
|
||||
echo 'Example: download.sh -app wordpress -d example.com'
|
||||
echo 'Example: appinstall.sh -app wordpress -d example.com'
|
||||
}
|
||||
|
||||
check_input(){
|
||||
@@ -15,7 +15,7 @@ check_input(){
|
||||
}
|
||||
|
||||
app_download(){
|
||||
docker-compose exec litespeed su -c "downloadctl.sh -app ${1} -domain ${2}"
|
||||
docker-compose exec litespeed su -c "appinstallctl.sh -app ${1} -domain ${2}"
|
||||
exit 0
|
||||
}
|
||||
|
||||
Executable → Regular
+41
-36
@@ -1,6 +1,7 @@
|
||||
#!/bin/bash
|
||||
DEFAULT_VH_ROOT='/var/www/vhosts'
|
||||
VH_DOC_ROOT=''
|
||||
VHNAME=''
|
||||
APP_NAME=''
|
||||
DOMAIN=''
|
||||
WWW_UID=''
|
||||
@@ -9,7 +10,7 @@ PUB_IP=$(curl http://checkip.amazonaws.com)
|
||||
|
||||
help_message(){
|
||||
echo 'Command [-app app_name] [-domain domain_name]'
|
||||
echo 'Example: download.sh -app wordpress -d example.com'
|
||||
echo 'Example: appinstallctl.sh -app wordpress -d example.com'
|
||||
}
|
||||
|
||||
check_input(){
|
||||
@@ -38,17 +39,19 @@ get_owner(){
|
||||
}
|
||||
|
||||
get_db_pass(){
|
||||
if [ -f ${DEFAULT_VH_ROOT}/${1}/.db_pass ]; then
|
||||
SQL_DB=$(grep -i Database ${VH_DOC_ROOT}/.db_pass | awk -F ':' '{print $2}' | tr -d '"')
|
||||
SQL_USER=$(grep -i Username ${VH_DOC_ROOT}/.db_pass | awk -F ':' '{print $2}' | tr -d '"')
|
||||
SQL_PASS=$(grep -i Password ${VH_DOC_ROOT}/.db_pass | awk -F ':' '{print $2}' | tr -d '"')
|
||||
else
|
||||
echo 'DB_PASS can not locate!'
|
||||
if [ -f ${DEFAULT_VH_ROOT}/${1}/.db_pass ]; then
|
||||
SQL_DB=$(grep -i Database ${VH_DOC_ROOT}/.db_pass | awk -F ':' '{print $2}' | tr -d '"')
|
||||
SQL_USER=$(grep -i Username ${VH_DOC_ROOT}/.db_pass | awk -F ':' '{print $2}' | tr -d '"')
|
||||
SQL_PASS=$(grep -i Password ${VH_DOC_ROOT}/.db_pass | awk -F ':' '{print $2}' | tr -d '"')
|
||||
else
|
||||
echo 'DB_PASS can not locate!'
|
||||
fi
|
||||
}
|
||||
|
||||
set_vh_docroot(){
|
||||
if [ -d ${DEFAULT_VH_ROOT}/${1}/html ]; then
|
||||
if [ "${VHNAME}" != '' ]; then
|
||||
VH_DOC_ROOT="${DEFAULT_VH_ROOT}/${VHNAME}/html"
|
||||
elif [ -d ${DEFAULT_VH_ROOT}/${1}/html ]; then
|
||||
VH_DOC_ROOT="${DEFAULT_VH_ROOT}/${1}/html"
|
||||
else
|
||||
echo "${DEFAULT_VH_ROOT}/${1}/html does not exist, please add domain first! Abort!"
|
||||
@@ -57,16 +60,15 @@ set_vh_docroot(){
|
||||
}
|
||||
|
||||
check_sql_native(){
|
||||
local COUNTER=0
|
||||
local COUNTER=0
|
||||
local LIMIT_NUM=100
|
||||
until [ "$(curl -v mysql:3306 2>&1 | grep native)" ];
|
||||
do
|
||||
echo "Counter: ${COUNTER}/${LIMIT_NUM}"
|
||||
until [ "$(curl -v mysql:3306 2>&1 | grep native)" ]; do
|
||||
echo "Counter: ${COUNTER}/${LIMIT_NUM}"
|
||||
COUNTER=$((COUNTER+1))
|
||||
if [ ${COUNTER} = 10 ]; then
|
||||
echo '--- MySQL is starting, please wait... ---'
|
||||
elif [ ${COUNTER} = ${LIMIT_NUM} ]; then
|
||||
echo '--- MySQL is timeout, exit! ---'
|
||||
echo '--- MySQL is timeout, exit! ---'
|
||||
exit 1
|
||||
fi
|
||||
sleep 1
|
||||
@@ -84,12 +86,12 @@ preinstall_wordpress(){
|
||||
NEWDBPWD="define('DB_NAME', '${SQL_DB}');"
|
||||
linechange 'DB_NAME' ${VH_DOC_ROOT}/wp-config.php "${NEWDBPWD}"
|
||||
elif [ -f ${VH_DOC_ROOT}/wp-config.php ]; then
|
||||
echo "${VH_DOC_ROOT}/wp-config.php already exist, exit !"
|
||||
echo "${VH_DOC_ROOT}/wp-config.php already exist, exit !"
|
||||
exit 1
|
||||
else
|
||||
echo 'Skip!'
|
||||
echo 'Skip!'
|
||||
exit 2
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
app_wordpress_dl(){
|
||||
@@ -108,34 +110,37 @@ main(){
|
||||
get_owner
|
||||
cd ${VH_DOC_ROOT}
|
||||
if [ "${APP_NAME}" = 'wordpress' ] || [ "${APP_NAME}" = 'wp' ]; then
|
||||
check_sql_native
|
||||
app_wordpress_dl
|
||||
check_sql_native
|
||||
app_wordpress_dl
|
||||
preinstall_wordpress
|
||||
exit 0
|
||||
else
|
||||
echo "APP: ${APP_NAME} not support, exit!"
|
||||
echo "APP: ${APP_NAME} not support, exit!"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
while [ ! -z "${1}" ]; do
|
||||
case ${1} in
|
||||
-[hH] | -help | --help)
|
||||
help_message
|
||||
;;
|
||||
-app | -a | -A) shift
|
||||
check_input "${1}"
|
||||
APP_NAME="${1}"
|
||||
;;
|
||||
-d | -D | -domain) shift
|
||||
check_input "${1}"
|
||||
DOMAIN="${1}"
|
||||
case ${1} in
|
||||
-[hH] | -help | --help)
|
||||
help_message
|
||||
;;
|
||||
-app | -a | -A) shift
|
||||
check_input "${1}"
|
||||
APP_NAME="${1}"
|
||||
;;
|
||||
-d | -D | -domain) shift
|
||||
check_input "${1}"
|
||||
DOMAIN="${1}"
|
||||
set_vh_docroot ${DOMAIN}
|
||||
;;
|
||||
*)
|
||||
help_message
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
;;
|
||||
-vhname) shift
|
||||
VHNAME="${1}"
|
||||
;;
|
||||
*)
|
||||
help_message
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
main
|
||||
+3
-3
@@ -10,9 +10,9 @@ SET_OK=0
|
||||
|
||||
help_message(){
|
||||
echo 'Command [-domain xxx]'
|
||||
echo 'Command [-user xxx] [-password xxx] [-database xxx]'
|
||||
echo 'Command [-domain xxx] [-user xxx] [-password xxx] [-database xxx]'
|
||||
echo 'Example 1: database.sh -domain example.com'
|
||||
echo 'Example 2: domain.sh -user USERNAME -password PASSWORD -database DATABASENAME'
|
||||
echo 'Example 2: database.sh -domain example.com -user USERNAME -password PASSWORD -database DATABASENAME'
|
||||
echo 'Script will auto assign database & username by the domain and random password for example 1'
|
||||
}
|
||||
|
||||
@@ -71,7 +71,7 @@ add_sql_client(){
|
||||
}
|
||||
|
||||
check_db_access(){
|
||||
add_sql_client
|
||||
#add_sql_client
|
||||
docker-compose exec mysql su -c "mysql -uroot -p${MYSQL_ROOT_PASSWORD} -e 'status'" >/dev/null 2>&1
|
||||
if [ ${?} != 0 ]; then
|
||||
echo "DB access failed, please check!"
|
||||
|
||||
@@ -0,0 +1,44 @@
|
||||
#!/usr/bin/env bash
|
||||
source .env
|
||||
DEMO_VH='localhost'
|
||||
APP_NAME='wordpress'
|
||||
DEMO_PATH="/var/www/${DEMO_VH}"
|
||||
|
||||
help_message(){
|
||||
echo 'Command [-domain]'
|
||||
echo 'Script will get database password and wordpress password from .env file and install the demo wordpress site for you'
|
||||
}
|
||||
|
||||
check_input(){
|
||||
if [ -z "${1}" ]; then
|
||||
help_message
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
run_database(){
|
||||
bash bin/database.sh -domain ${DEMO_VH} -user ${MYSQL_USER} -password ${MYSQL_PASSWORD} -database ${MYSQL_DATABASE}
|
||||
}
|
||||
|
||||
|
||||
app_download(){
|
||||
docker-compose exec litespeed su -c "appinstallctl.sh -app ${1} -domain ${2} -vhname localhost"
|
||||
}
|
||||
|
||||
main(){
|
||||
run_database
|
||||
app_download ${APP_NAME} ${DOMAIN}
|
||||
}
|
||||
|
||||
while [ ! -z "${1}" ]; do
|
||||
case ${1} in
|
||||
-[hH] | -help | --help)
|
||||
help_message
|
||||
;;
|
||||
*)
|
||||
help_message
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
main
|
||||
Reference in New Issue
Block a user