added env generator, removed .env

This commit is contained in:
Nick Yeoman 2023-12-19 12:41:14 -08:00
parent 1463667306
commit ae3688b166
2 changed files with 48 additions and 8 deletions

8
.env
View File

@ -1,8 +0,0 @@
NETWORKNAME=
MYSQL_ROOT_PASSWORD=
MYSQL_USER=
MYSQL_PASSWORD=
MYSQL_DATABASE=
MYSQL_USER=
MYSQL_PASSWORD=
MYSQL_DATABASE=

48
bin/generate_env.sh Normal file
View File

@ -0,0 +1,48 @@
#!/bin/bash
ENV_FILE=".env"
# Function to generate a random alphanumeric password of a given length
generate_password() {
tr -dc 'a-zA-Z0-9' < /dev/urandom | head -c "${1:-12}"
}
# Function to prompt for a value if not set as a parameter
prompt_for_value() {
read -p "$1: " value
echo "$value"
}
# Set $PROJECTNAME if not provided as a parameter
PROJECTNAME=${1:-$(prompt_for_value "Enter PROJECTNAME")}
cat <<EOF > $ENV_FILE
# Docker
NETWORKNAME=${PROJECTNAME}_web
# MySQL
MYSQL_ROOT_PASSWORD=$(generate_password)
MYSQL_USER=u$(echo $PROJECTNAME | tr '[:upper:]' '[:lower:]')
MYSQL_PASSWORD=$(generate_password)
MYSQL_DATABASE=db_$(echo $PROJECTNAME | tr '[:upper:]' '[:lower:]')
# GITEA
GITEA_API_URL=REPLACEME
ACCESS_TOKEN=REPLACEME
# Joomla
EMAIL=noreply@example.com
JOOMLA_USER="John Doe"
JOOMLA_USERNAME=admin
# Passwords must be 12 characters long (admin-password)
JOOMLA_PASSWORD=$(generate_password)
# SMTP
SMTP_USER=null
SMTP_PASS=null
SMTP_HOST='mailhog'
SMTP_SECURITY='None'
SMTP_PORT=1025
EOF
echo "Generated $ENV_FILE with randomly generated passwords and customized PROJECTNAME."