* create stack project reorganize to separate scripts
+ pma hosts modify
This commit is contained in:
74
stack-project/project/_create-configs.sh
Normal file
74
stack-project/project/_create-configs.sh
Normal file
@ -0,0 +1,74 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
# Проект должен быть указан родительским скриптом
|
||||
if [ ! -n "$PROJECT" ]; then
|
||||
echo "❌ Проект не указан!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
CONFIG_DIR=${PROJECT_DIR}/config
|
||||
|
||||
mkdir ${CONFIG_DIR}
|
||||
mkdir ${CONFIG_DIR}/composer
|
||||
mkdir ${CONFIG_DIR}/mariadb
|
||||
mkdir ${CONFIG_DIR}/nginx
|
||||
mkdir ${CONFIG_DIR}/nginx/conf.d
|
||||
mkdir ${CONFIG_DIR}/nginx/includes.d
|
||||
mkdir ${CONFIG_DIR}/nginx/ssl.d
|
||||
mkdir ${CONFIG_DIR}/redis
|
||||
|
||||
cat << EOF > ${CONFIG_DIR}/composer/auth.json
|
||||
{
|
||||
"github-oauth": {
|
||||
"github.com": ""
|
||||
}
|
||||
}
|
||||
EOF
|
||||
|
||||
cat << EOF > ${CONFIG_DIR}/mariadb/90-mysqld.cnf
|
||||
[mysqld]
|
||||
general_log=OFF
|
||||
general_log_file=/var/log/mariadb/mariadb.log
|
||||
EOF
|
||||
|
||||
cat << EOF > ${CONFIG_DIR}/nginx/conf.d/vhosts.conf
|
||||
upstream php {
|
||||
server php:9000;
|
||||
}
|
||||
map \$http_host \$root {
|
||||
${PROJECT}.${DOMAIN_PLACEHOLDER} /var/www/${PROJECT};
|
||||
}
|
||||
server {
|
||||
listen 80 default;
|
||||
root \$root;
|
||||
include includes.d/octobercms.conf;
|
||||
include includes.d/staticfiles.conf;
|
||||
client_max_body_size 300M;
|
||||
large_client_header_buffers 4 32k;
|
||||
location ~ ^/index.php {
|
||||
fastcgi_pass php;
|
||||
include fastcgi_params;
|
||||
fastcgi_param SCRIPT_FILENAME \$document_root\$fastcgi_script_name;
|
||||
fastcgi_param SERVER_NAME \$host;
|
||||
}
|
||||
}
|
||||
EOF
|
||||
|
||||
cp /opt/stacks/structure/config/nginx/includes.d/octobercms.conf ${CONFIG_DIR}/nginx/includes.d/
|
||||
cp /opt/stacks/structure/config/nginx/includes.d/staticfiles.conf ${CONFIG_DIR}/nginx/includes.d/
|
||||
|
||||
cat << EOF > ${CONFIG_DIR}/redis/redis-local.conf
|
||||
port 6379
|
||||
tcp-backlog 128
|
||||
protected-mode no
|
||||
stop-writes-on-bgsave-error no
|
||||
databases 4
|
||||
always-show-logo no
|
||||
syslog-enabled yes
|
||||
pidfile /var/run/redis_6379.pid
|
||||
loglevel notice
|
||||
logfile ""
|
||||
EOF
|
||||
|
||||
chown $P_UID:$P_GID -R ${CONFIG_DIR}
|
24
stack-project/project/_create-misc-dirs.sh
Normal file
24
stack-project/project/_create-misc-dirs.sh
Normal file
@ -0,0 +1,24 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
# Проект должен быть указан родительским скриптом
|
||||
if [ ! -n "$PROJECT" ]; then
|
||||
echo "❌ Проект не указан!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
HOSTFILES_DIR=${PROJECT_DIR}/hostfiles
|
||||
mkdir ${HOSTFILES_DIR}
|
||||
chown $P_UID:$P_GID ${HOSTFILES_DIR}
|
||||
|
||||
LOGS_DIR=${PROJECT_DIR}/logs
|
||||
mkdir ${LOGS_DIR}
|
||||
mkdir ${LOGS_DIR}/mariadb
|
||||
mkdir ${LOGS_DIR}/nginx
|
||||
mkdir ${LOGS_DIR}/php-fpm
|
||||
|
||||
MARIADB_DIR=${PROJECT_DIR}/mariadb
|
||||
mkdir ${MARIADB_DIR}
|
||||
|
||||
PROFILER_DIR=${PROJECT_DIR}/profiler
|
||||
mkdir ${PROFILER_DIR}
|
20
stack-project/project/_create-ssh-dir.sh
Normal file
20
stack-project/project/_create-ssh-dir.sh
Normal file
@ -0,0 +1,20 @@
|
||||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
# Проект должен быть указан родительским скриптом
|
||||
if [ ! -n "$PROJECT" ]; then
|
||||
echo "❌ Проект не указан!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
SSH_DIR=${PROJECT_DIR}/ssh
|
||||
mkdir ${SSH_DIR}
|
||||
touch ${SSH_DIR}/authorized_keys
|
||||
ssh-keygen -N "" -t ed25519 -f ${SSH_DIR}/id_ed25519 -C workspace-${PROJECT}@${MACHINE} 2>&1 > /dev/null
|
||||
|
||||
echo "SSH Key:"
|
||||
cat ${SSH_DIR}/id_ed25519.pub
|
||||
echo
|
||||
|
||||
ssh-keyscan -H github.com > ${SSH_DIR}/known_hosts 2>/dev/null
|
||||
chown $P_UID:$P_GID -R ${SSH_DIR}
|
Reference in New Issue
Block a user