openproject.sh 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. #!/usr/bin/env bash
  2. while true;do ls | grep -q dockerbunker.sh;if [[ $? == 0 ]];then BASE_DIR=$PWD;break;else cd ../;fi;done
  3. PROPER_NAME="Open Project"
  4. SERVICE_NAME="$(echo -e "${PROPER_NAME,,}" | tr -d '[:space:]')"
  5. PROMPT_SSL=1
  6. safe_to_keep_volumes_when_reconfiguring=1
  7. declare -a environment=( "data/env/dockerbunker.env" "data/include/init.sh" )
  8. for env in "${environment[@]}";do
  9. [[ -f "${BASE_DIR}/$env" ]] && source "${BASE_DIR}/$env"
  10. done
  11. declare -A WEB_SERVICES
  12. declare -a containers=( "openproject-service-dockerbunker" )
  13. declare -a volumes=( "openproject-data-vol-1" "openproject-pgdata-vol-1" "openproject-logs-vol-1" )
  14. declare -a add_to_network=( "openproject-service-dockerbunker" )
  15. declare -a networks=( )
  16. declare -A IMAGES=( [service]="openproject/community" )
  17. [[ -z $1 ]] && options_menu
  18. configure() {
  19. pre_configure_routine
  20. echo -e "# \e[4mOpen Project Settings\e[0m"
  21. set_domain
  22. configure_mx
  23. cat <<-EOF >> "${SERVICE_ENV}"
  24. PROPER_NAME="${PROPER_NAME}"
  25. SERVICE_NAME="${SERVICE_NAME}"
  26. SSL_CHOICE=${SSL_CHOICE}
  27. LE_EMAIL=${LE_EMAIL}
  28. SERVICE_SPECIFIC_MX=${SERVICE_SPECIFIC_MX}
  29. # ------------------------------
  30. # General Settings
  31. # ------------------------------
  32. SERVICE_DOMAIN=${SERVICE_DOMAIN}
  33. # ------------------------------
  34. # Open Project Settings
  35. # ------------------------------
  36. SECRET_KEY_BASE=$(</dev/urandom tr -dc A-Za-z0-9 | head -c 28)
  37. # ------------------------------
  38. # E-Mail Server Settings
  39. # ------------------------------
  40. EMAIL_DELIVERY_METHOD=smtp
  41. SMTP_AUTHENTICATION=login
  42. SMTP_PORT=587
  43. SMTP_ENABLE_STARTTLS_AUTO=true
  44. SMTP_ADDRESS=${MX_DOMAIN}
  45. SMTP_USER_NAME=${MX_EMAIL}
  46. SMTP_PASSWORD=${MX_PASSWORD}
  47. SMTP_DOMAIN=${MX_DOMAIN}
  48. EOF
  49. post_configure_routine
  50. }
  51. if [[ $1 == "letsencrypt" ]];then
  52. $1 $*
  53. else
  54. $1
  55. fi