mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2024-11-25 18:30:55 -06:00
63 lines
1.8 KiB
Bash
Executable File
63 lines
1.8 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Runs every time we create a new grain!
|
|
|
|
# Create a bunch of folders under the clean /var that php, nginx, and mysql expect to exist
|
|
mkdir -p /var/lib/mysql
|
|
mkdir -p /var/lib/nginx
|
|
mkdir -p /var/lib/php/sessions/
|
|
mkdir -p /var/log
|
|
mkdir -p /var/log/mysql
|
|
mkdir -p /var/log/nginx
|
|
# Wipe /var/run, since pidfiles and socket files from previous launches should go away
|
|
# TODO someday: I'd prefer a tmpfs for these.
|
|
rm -rf /var/run
|
|
mkdir -p /var/run
|
|
rm -rf /var/tmp
|
|
mkdir -p /var/tmp
|
|
mkdir -p /var/run/mysqld
|
|
|
|
# make storage directories
|
|
rm -rf /var/storage
|
|
mkdir -p /var/storage/app/public
|
|
mkdir -p /var/storage/build
|
|
mkdir -p /var/storage/database
|
|
mkdir -p /var/storage/debugbar
|
|
mkdir -p /var/storage/export
|
|
mkdir -p /var/storage/framework/cache
|
|
mkdir -p /var/storage/framework/sessions
|
|
mkdir -p /var/storage/framework/views
|
|
mkdir -p /var/storage/logs
|
|
mkdir -p /var/storage/upload
|
|
|
|
|
|
# Ensure mysql tables created
|
|
HOME=/etc/mysql /usr/bin/mysql_install_db --force
|
|
|
|
# Spawn mysqld, php
|
|
HOME=/etc/mysql /usr/sbin/mysqld &
|
|
|
|
/usr/sbin/php-fpm7.0 --nodaemonize --fpm-config /etc/php/7.0/fpm/php-fpm.conf &
|
|
|
|
# Wait until mysql and php have bound their sockets, indicating readiness
|
|
while [ ! -e /var/run/mysqld/mysqld.sock ] ; do
|
|
echo "waiting for mysql to be available at /var/run/mysqld/mysqld.sock"
|
|
sleep .5
|
|
done
|
|
while [ ! -e /var/run/php7.0-fpm.sock ] ; do
|
|
echo "waiting for php7.0-fpm to be available at /var/run/php7.0-fpm.sock"
|
|
sleep .5
|
|
done
|
|
|
|
echo "Installing database.."
|
|
# Install database for Firefly III
|
|
echo "CREATE DATABASE IF NOT EXISTS firefly; GRANT ALL on firefly.* TO 'firefly'@'localhost' IDENTIFIED BY 'firefly';" | mysql -uroot
|
|
echo "Done!"
|
|
|
|
echo "Migrating..."
|
|
php /opt/app/artisan migrate --seed --force
|
|
echo "Done!"
|
|
|
|
# Start nginx.
|
|
/usr/sbin/nginx -c /opt/app/.sandstorm/service-config/nginx.conf -g "daemon off;"
|