mirror of
https://github.com/Websoft9/websoft9.git
synced 2025-01-25 02:38:42 +08:00
51 lines
1.8 KiB
Django/Jinja
51 lines
1.8 KiB
Django/Jinja
#!/bin/bash
|
|
# support special char [!"`$%()[]{},.*+-:;<=>?_~/|]
|
|
new_password=$(pwgen -ncCs 14 1)!
|
|
sudo sleep 10s
|
|
sudo sh -c 'echo "init-password started at" $(date -d now) 1>> /tmp/init_debug.txt'
|
|
|
|
{% for app_name in applist.stdout_lines %}
|
|
|
|
#1 init for applist of .env
|
|
sudo docker compose -f /data/apps/{{app_name}}/docker-compose.yml down -v
|
|
|
|
# init password
|
|
has_app_password=$(cat /data/apps/{{app_name}}/.env |grep APP_PASSWORD)
|
|
if [ $has_app_password == "" ]; then
|
|
sudo sed -i "s/_PASSWORD=.*/_PASSWORD=$new_password/g" /data/apps/{{app_name}}/.env
|
|
else
|
|
# has_app_encrypt
|
|
has_app_encrypt==$(cat /data/apps/{{app_name}}/.env |grep "APP_ENCRYPT=")
|
|
if [ $has_app_encrypt == "" ]; then
|
|
sudo sed -i "s/APP_PASSWORD=.*/APP_PASSWORD=$new_password/g" /data/apps/{{app_name}}/.env
|
|
else
|
|
sudo sed -i "s/APP_PASSWORD=.*/APP_PASSWORD=$new_password/g" /data/apps/{{app_name}}/.env
|
|
cat .env |grep "APP_ENCRYPT=" |awk -F"APP_ENCRYPT=" '{ print $2 }' >>/tmp/encrypt.sh
|
|
app_encrypt_password=$(bash /tmp/encrypt.sh)
|
|
sudo sed -i "s/APP_ENCRYPT_PASSWORD=.*/APP_ENCRYPT_PASSWORD=$app_encrypt_password/g" /data/apps/{{app_name}}/.env
|
|
fi
|
|
fi
|
|
|
|
# init APP_URL
|
|
app_url_replace=$(cat /data/apps/{{app_name}}/.env |grep APP_URL_REPLACE)
|
|
if [ $app_url_replace == "APP_URL_REPLACE=true" ]; then
|
|
public_ip=`wget -O - https://download.websoft9.com/ansible/get_ip.sh | bash`
|
|
sudo sed -i "s/APP_URL=.*/APP_URL=$public_ip/g" /data/apps/{{app_name}}/.env
|
|
else
|
|
echo "There is not APP_URL"
|
|
fi
|
|
|
|
sudo docker compose -f /data/apps/{{app_name}}/docker-compose.yml up -d --no-recreate
|
|
|
|
#2 init for applist of special
|
|
after_path=/data/apps/{{app_name}}/src/after_up.sh
|
|
if [ -f "$after_path" ]; then
|
|
bash /data/apps/{{app_name}}/src/after_up.sh
|
|
else
|
|
echo "There is not after_up"
|
|
fi
|
|
|
|
{% endfor %}
|
|
|
|
sudo sh -c 'echo "init docker ended at" $(date -d now) 1>> /tmp/init_debug.txt'
|