fix install.sh add random password for .env (#9282)

* fix install.sh add random password for .env

* fix generate random password

* remove comment
This commit is contained in:
xiagw 2024-05-14 17:58:28 +08:00 committed by GitHub
parent 3d4ae9c210
commit 462f0f76a4
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -2,14 +2,15 @@
set -o nounset set -o nounset
set -o pipefail set -o pipefail
create_immich_directory() { local -r Tgt='./immich-app' create_immich_directory() {
local -r Tgt='./immich-app'
echo "Creating Immich directory..." echo "Creating Immich directory..."
if [[ -e $Tgt ]]; then if [[ -e $Tgt ]]; then
echo "Found existing directory $Tgt, will overwrite YAML files" echo "Found existing directory $Tgt, will overwrite YAML files"
else else
mkdir "$Tgt" || return mkdir "$Tgt" || return
fi fi
cd "$Tgt" || return cd "$Tgt" || return 1
} }
download_docker_compose_file() { download_docker_compose_file() {
@ -22,6 +23,16 @@ download_dot_env_file() {
"${Curl[@]}" "$RepoUrl"/example.env -o ./.env "${Curl[@]}" "$RepoUrl"/example.env -o ./.env
} }
generate_random_password() {
echo "Generate random password for .env file..."
rand_pass=$(echo "$RANDOM$(date)$RANDOM" | sha256sum | base64 | head -c10)
if [ -z "$rand_pass" ]; then
sed -i -e "s/DB_PASSWORD=postgres/DB_PASSWORD=postgres${RANDOM}${RANDOM}/" ./.env
else
sed -i -e "s/DB_PASSWORD=postgres/DB_PASSWORD=${rand_pass}/" ./.env
fi
}
start_docker_compose() { start_docker_compose() {
echo "Starting Immich's docker containers" echo "Starting Immich's docker containers"
@ -40,7 +51,7 @@ start_docker_compose() {
show_friendly_message() { show_friendly_message() {
local ip_address local ip_address
ip_address=$(hostname -I | awk '{print $1}') ip_address=$(hostname -I | awk '{print $1}')
cat << EOF cat <<EOF
Successfully deployed Immich! Successfully deployed Immich!
You can access the website at http://$ip_address:2283 and the server URL for the mobile app is http://$ip_address:2283/api You can access the website at http://$ip_address:2283 and the server URL for the mobile app is http://$ip_address:2283/api
--------------------------------------------------- ---------------------------------------------------
@ -66,11 +77,25 @@ main() {
return 14 return 14
fi fi
create_immich_directory || { echo 'error creating Immich directory'; return 10; } create_immich_directory || {
download_docker_compose_file || { echo 'error downloading Docker Compose file'; return 11; } echo 'error creating Immich directory'
download_dot_env_file || { echo 'error downloading .env'; return 12; } return 10
start_docker_compose || { echo 'error starting Docker'; return 13; } }
return 0; } download_docker_compose_file || {
echo 'error downloading Docker Compose file'
return 11
}
download_dot_env_file || {
echo 'error downloading .env'
return 12
}
generate_random_password
start_docker_compose || {
echo 'error starting Docker'
return 13
}
return 0
}
main main
Exit=$? Exit=$?