18 # to prep the .env file:
21 # for node-gyp, used in the asset compilation process:
41 - cp .env.nanobox .env
49 - NODE_ENV=production bundle exec rake assets:precompile
51 - "envsubst < /app/.env.nanobox > /app/.env.production"
53 if [ -z "$LOCAL_DOMAIN" ]
55 . /app/.env.production
58 erb /app/nanobox/nginx-web.conf.erb > /app/nanobox/nginx-web.conf
59 erb /app/nanobox/nginx-stream.conf.erb > /app/nanobox/nginx-stream.conf
60 - touch /app/log/production.log
63 - bin/tootctl cache clear
64 - bundle exec rake db:migrate:setup
68 if [[ "${ES_ENABLED}" != "false" ]]
70 bin/tootctl search deploy
76 nginx: nginx -c /app/nanobox/nginx-web.conf
77 rails: bundle exec puma -C /app/config/puma.rb
86 rails: 'log/production.log'
95 nginx: nginx -c /app/nanobox/nginx-stream.conf
99 - '/api/v1/streaming*'
100 # Somehow we're getting requests for scheme://domain//api/v1/streaming* - match those, too
101 - '//api/v1/streaming*'
109 default: bundle exec sidekiq -c 5 -q default -L /app/log/sidekiq.log
110 mailers: bundle exec sidekiq -c 5 -q mailers -L /app/log/sidekiq.log
111 pull: bundle exec sidekiq -c 5 -q pull -L /app/log/sidekiq.log
112 push: bundle exec sidekiq -c 5 -q push -L /app/log/sidekiq.log
118 rails: 'log/production.log'
119 sidekiq: 'log/sidekiq.log'
127 image: nanobox/postgresql:9.6
131 schedule: '0 3 * * *'
133 PGPASSWORD=${DATA_DB_PASS} pg_dump -U ${DATA_DB_USER} -w -Fc -O gonano |
135 curl -k -H "X-AUTH-TOKEN: ${WAREHOUSE_DATA_HOARDER_TOKEN}" https://${WAREHOUSE_DATA_HOARDER_HOST}:7410/blobs/backup-${HOSTNAME}-$(date -u +%Y-%m-%d.%H-%M-%S).sql.gz -X POST -T - >&2
136 curl -k -s -H "X-AUTH-TOKEN: ${WAREHOUSE_DATA_HOARDER_TOKEN}" https://${WAREHOUSE_DATA_HOARDER_HOST}:7410/blobs/ |
140 head -n-${BACKUP_COUNT:-1} |
141 sed 's/.*: \?"\(.*\)".*/\1/' |
144 curl -k -H "X-AUTH-TOKEN: ${WAREHOUSE_DATA_HOARDER_TOKEN}" https://${WAREHOUSE_DATA_HOARDER_HOST}:7410/blobs/${file} -X DELETE
149 image: nanobox/elasticsearch:5
153 schedule: '0 3 * * *'
155 id=$(cat /proc/sys/kernel/random/uuid)
156 curl -X PUT -H "Content-Type: application/json" "127.0.0.1:9200/_snapshot/${id}" -d "{\"type\": \"fs\",\"settings\": {\"location\": \"/var/tmp/${id}\",\"compress\": true}}"
157 curl -X PUT -H "Content-Type: application/json" "127.0.0.1:9200/_snapshot/${id}/backup?wait_for_completion=true&pretty"
158 tar -cz -C "/var/tmp/${id}" . |
159 curl -k -H "X-AUTH-TOKEN: ${WAREHOUSE_DATA_HOARDER_TOKEN}" https://${WAREHOUSE_DATA_HOARDER_HOST}:7410/blobs/backup-${HOSTNAME}-$(date -u +%Y-%m-%d.%H-%M-%S).tgz -X POST -T - >&2
160 curl -X DELETE -H "Content-Type: application/json" "127.0.0.1:9200/_snapshot/${id}"
161 rm -rf "/var/tmp/${id}"
162 curl -k -s -H "X-AUTH-TOKEN: ${WAREHOUSE_DATA_HOARDER_TOKEN}" https://${WAREHOUSE_DATA_HOARDER_HOST}:7410/blobs/ |
166 head -n-${BACKUP_COUNT:-1} |
167 sed 's/.*: \?"\(.*\)".*/\1/' |
170 curl -k -H "X-AUTH-TOKEN: ${WAREHOUSE_DATA_HOARDER_TOKEN}" https://${WAREHOUSE_DATA_HOARDER_HOST}:7410/blobs/${file} -X DELETE
175 image: nanobox/redis:4.0
179 schedule: '0 3 * * *'
181 curl -k -H "X-AUTH-TOKEN: ${WAREHOUSE_DATA_HOARDER_TOKEN}" https://${WAREHOUSE_DATA_HOARDER_HOST}:7410/blobs/backup-${HOSTNAME}-$(date -u +%Y-%m-%d.%H-%M-%S).rdb -X POST -T /data/var/db/redis/dump.rdb >&2
182 curl -k -s -H "X-AUTH-TOKEN: ${WAREHOUSE_DATA_HOARDER_TOKEN}" https://${WAREHOUSE_DATA_HOARDER_HOST}:7410/blobs/ |
186 head -n-${BACKUP_COUNT:-1} |
187 sed 's/.*: \?"\(.*\)".*/\1/' |
190 curl -k -H "X-AUTH-TOKEN: ${WAREHOUSE_DATA_HOARDER_TOKEN}" https://${WAREHOUSE_DATA_HOARDER_HOST}:7410/blobs/${file} -X DELETE
195 image: nanobox/unfs:0.9
199 schedule: '0 3 * * *'
201 tar cz -C /data/var/db/unfs/ . |
202 curl -k -H "X-AUTH-TOKEN: ${WAREHOUSE_DATA_HOARDER_TOKEN}" https://${WAREHOUSE_DATA_HOARDER_HOST}:7410/blobs/backup-${HOSTNAME}-$(date -u +%Y-%m-%d.%H-%M-%S).tgz -X POST -T - >&2
203 curl -k -s -H "X-AUTH-TOKEN: ${WAREHOUSE_DATA_HOARDER_TOKEN}" https://${WAREHOUSE_DATA_HOARDER_HOST}:7410/blobs/ |
207 head -n-${BACKUP_COUNT:-1} |
208 sed 's/.*: \?"\(.*\)".*/\1/' |
211 curl -k -H "X-AUTH-TOKEN: ${WAREHOUSE_DATA_HOARDER_TOKEN}" https://${WAREHOUSE_DATA_HOARDER_HOST}:7410/blobs/${file} -X DELETE