start.sh 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. #!/bin/bash
  2. # set -eu -o pipefail
  3. echo "========= Start ========="
  4. echo "--> local.py"
  5. sed -e "s/##APP_DOMAIN##/${APP_DOMAIN}/" \
  6. -e "s/##MAIL_DOMAIN##/${MAIL_DOMAIN}/" \
  7. -e "s/##MAIL_FROM##/${MAIL_FROM}/" \
  8. -e "s/##MAIL_SMTP_SERVER##/${MAIL_SMTP_SERVER}/" \
  9. -e "s/##MAIL_SMTP_PORT##/${MAIL_SMTP_PORT}/" \
  10. -e "s/##MAIL_SMTP_USERNAME##/${MAIL_SMTP_USERNAME}/" \
  11. -e "s/##MAIL_SMTP_PASSWORD##/${MAIL_SMTP_PASSWORD}/" \
  12. -e "s/##LDAP_SERVER##/${LDAP_SERVER}/" \
  13. -e "s/##LDAP_PORT##/${LDAP_PORT}/" \
  14. -e "s/##LDAP_USERS_BASE_DN##/${LDAP_USERS_BASE_DN}/" \
  15. -e "s/##POSTGRESQL_DATABASE##/${POSTGRESQL_DATABASE}/" \
  16. -e "s/##POSTGRESQL_USERNAME##/${POSTGRESQL_USERNAME}/" \
  17. -e "s/##POSTGRESQL_PASSWORD##/${POSTGRESQL_PASSWORD}/" \
  18. -e "s/##POSTGRESQL_HOST##/${POSTGRESQL_HOST}/" \
  19. -e "s/##POSTGRESQL_PORT##/${POSTGRESQL_PORT}/" \
  20. /app/code/local.py > /run/local.py
  21. echo "--> Update conf.json"
  22. sed -e "s/##APP_DOMAIN##/${APP_DOMAIN}/" /app/code/conf.json > /run/conf.json
  23. echo "--> Update nginx.conf"
  24. sed -e "s,##APP_DOMAIN##,${APP_DOMAIN}," /app/code/nginx.conf > /run/nginx.conf
  25. echo "--> Setup taiga virtual env"
  26. source /app/code/taiga/bin/activate
  27. echo "--> Run migration scripts"
  28. if [[ ! -d /app/data/media/user ]]; then
  29. echo "--> New installation create inital project templates"
  30. mkdir -p /app/data/media/user
  31. cd /app/code/taiga-back
  32. python manage.py migrate --noinput
  33. python manage.py loaddata initial_project_templates
  34. fi
  35. echo "--> Make cloudron own /run"
  36. chown -R cloudron:cloudron /run
  37. chown -R cloudron:cloudron /app/data
  38. echo "--> Start nginx"
  39. nginx -c /run/nginx.conf &
  40. echo "--> Start taiga-back"
  41. PATH=/app/code/taiga/bin:$PATH
  42. HOME=/app/code
  43. PYTHONPATH=/app/code/taiga/lib/python3.4/site-packages
  44. cd /app/code/taiga-back
  45. exec /usr/local/bin/gosu cloudron:cloudron gunicorn -w 1 -t 60 --pythonpath=. -b 127.0.0.1:8001 taiga.wsgi