10 Commits

Author SHA1 Message Date
Ammar Hussein a0d5c9fc48 chore: publish 0.1 release 2025-02-23 18:14:01 -08:00
Ammar Hussein 900751b77e fix secret error 2025-02-20 06:13:10 -08:00
cas f660ad5c1c Update .drone.yml 2025-01-08 10:09:12 -08:00
3wordchant 225569c478 Switch to self-hosted stack-ssh-deploy image [mass update] 2023-01-21 11:49:55 -08:00
3wordchant 02610fdee9 Add drone configs / secrets [mass update] 2023-01-20 21:32:06 -08:00
3wordchant f1f768b424 Add CI and catalogue generation [mass update] 2023-01-20 10:45:03 -08:00
3wordchant a005c99886 Change Postgres volume path 2021-08-11 10:54:29 +02:00
knoflook ab4614d2c9 Add the possibility of using redis 2021-08-11 10:40:55 +02:00
knoflook 6283627b87 Fix reverse proxy handling by firefly 2021-08-11 10:40:17 +02:00
knoflook a4b0f1b181 Initial commit 2021-08-10 19:58:03 +02:00
4 changed files with 84 additions and 15 deletions
+41
View File
@@ -0,0 +1,41 @@
---
kind: pipeline
name: deploy to swarm-test.autonomic.zone
steps:
- name: deployment
image: git.coopcloud.tech/coop-cloud/stack-ssh-deploy:latest
settings:
host: swarm-test.autonomic.zone
stack: firefly-iii
generate_secrets: true
purge: true
deploy_key:
from_secret: drone_ssh_swarm_test
networks:
- proxy
environment:
DOMAIN: firefly-iii.swarm-test.autonomic.zone
STACK_NAME: firefly-iii
LETS_ENCRYPT_ENV: production
SECRET_APP_KEY_VERSION: v1
SECRET_STATIC_CRON_TOKEN_VERSION: v1
SECRET_DB_PASSWORD_VERSION: v1
trigger:
branch:
- main
---
kind: pipeline
name: generate recipe catalogue
steps:
- name: release a new version
image: plugins/downstream
settings:
server: https://build.coopcloud.tech
token:
from_secret: drone_abra-bot_token
fork: true
repositories:
- toolshed/auto-recipes-catalogue-json
trigger:
event: tag
+5 -4
View File
@@ -1,5 +1,5 @@
TYPE=firefly-iii
DOMAIN=example.com
DOMAIN=firefly-iii.example.com
LETS_ENCRYPT_ENV=production
APP_NAME=FireflyIII
@@ -8,6 +8,7 @@ TZ=Europe/Amsterdam
DEFAULT_LANGUAGE=en_US
DEFAULT_LOCALE=equal
APP_DEBUG=false
APP_LOG_LEVEL=notice
# You can disable the Content Security Policy header when you're using an ancient browser
# or any version of Microsoft Edge / Internet Explorer (which amounts to the same thing really)
# This leaves you with the risk of not being able to stop XSS bugs should they ever surface.
@@ -15,14 +16,14 @@ APP_DEBUG=false
DISABLE_CSP_HEADER=false
# Webhooks are ecurity sensitive!
ALLOW_WEBHOOKS=false
# TRUSTED_PROXIES is a useful variable when using Docker and/or a reverse proxy.
# Set it to ** and reverse proxies work just fine.
TRUSTED_PROXIES=
SECRET_APP_KEY_VERSION=v1 # length=32
SECRET_STATIC_CRON_TOKEN_VERSION=v1 # length=32
SECRET_DB_PASSWORD_VERSION=v1 # length=32
# REDIS
# COMPOSE_FILE="compose.yml:compose.redis.yml"
# TODO: Implement redis/memcached (see: https://github.com/firefly-iii/firefly-iii/blob/10545f3e1baf5c53097392887f38469ffb75cab5/.env.example#L91)
# TODO: Implement mail (see: https://github.com/firefly-iii/firefly-iii/blob/10545f3e1baf5c53097392887f38469ffb75cab5/.env.example#L123)
# TODO: Implement map (https://github.com/firefly-iii/firefly-iii/blob/10545f3e1baf5c53097392887f38469ffb75cab5/.env.example#L159)
+25
View File
@@ -0,0 +1,25 @@
version: "3.8"
services:
app:
environment:
- CACHE_DRIVER=redis
- SESSION_DRIVER=redis
- REDIS_SCHEME=tcp
- REDIS_PATH=
- REDIS_HOST=redis
- REDIS_PORT=6379
- REDIS_DB="0"
- REDIS_CACHE_DB="1"
- REDIS_PASSWORD=null
redis:
image: redis:alpine
command: redis-server
volumes:
- redis-data:/data
- redis-conf:/usr/local/etc/redis/redis.conf
networks:
- internal
volumes:
redis-data:
redis-conf:
+13 -11
View File
@@ -2,7 +2,7 @@ version: '3.8'
services:
app:
image: fireflyiii/core:version-5.5.13
image: fireflyiii/core:version-6.2.9
volumes:
- firefly_iii_upload:/var/www/html/storage/upload
secrets:
@@ -19,10 +19,12 @@ services:
- DISABLE_CSP_HEADER
- ALLOW_WEBHOOKS
- TRUSTED_PROXIES
- APP_LOG_LEVEL
- APP_URL=${DOMAIN}
- APP_KEY_FILE=/run/secrets/app_key
- CRON_TOKEN_FILE=/run/secrets/cron_token
- STATIC_CRON_TOKEN_FILE=
- LOG_CHANNEL=stack
- APP_LOG_LEVEL=notice
- AUDIT_LOG_LEVEL=info
- DB_CONNECTION=pgsql
- DB_HOST=db
@@ -38,7 +40,7 @@ services:
- CACHE_DRIVER=file
- SESSION_DRIVER=file
- COOKIE_PATH="/"
- COOKIE_DOMAIN=
- COOKIE_DOMAIN=${DOMAIN}
- COOKIE_SECURE=false
- COOKIE_SAMESITE=lax
- SEND_REGISTRATION_MAIL=false
@@ -67,7 +69,7 @@ services:
- DEMO_PASSWORD=
- IS_HEROKU=false
- FIREFLY_III_LAYOUT=v1
- APP_URL=http://localhost
- TRUSTED_PROXIES=**
depends_on:
- db
networks:
@@ -100,11 +102,16 @@ services:
- POSTGRES_USER=firefly
- POSTRES_DB=firefly
volumes:
- firefly_iii_db:/var/lib/mysql
- "firefly_iii_db:/var/lib/postgresql/data"
secrets:
- db_password
networks:
- internal
cron:
image: alpine
command: sh -c "echo \"0 3 * * * wget -qO- https://${DOMAIN}/api/v1/cron/`cat /run/secrets/cron_token`\" | crontab - && crond -f -L /dev/stdout"
secrets:
- cron_token
networks:
internal:
proxy:
@@ -114,7 +121,7 @@ volumes:
firefly_iii_db:
secrets:
cron_token:
name: ${STACK_NAME}_static_cron_token_${SECRET_STATIC_CRON_TOKEN_VERSION}
name: ${STACK_NAME}_cron_token_${SECRET_STATIC_CRON_TOKEN_VERSION}
external: true
app_key:
name: ${STACK_NAME}_app_key_${SECRET_APP_KEY_VERSION}
@@ -122,8 +129,3 @@ secrets:
db_password:
name: ${STACK_NAME}_db_password_${SECRET_DB_PASSWORD_VERSION}
external: true
# cron:
# image: alpine
# command: command: sh -c "echo \"0 3 * * * wget -qO- https://<Firefly III URL>/api/v1/cron/<TOKEN>\" | crontab - && crond -f -L /dev/stdout"
# secrets:
# - cron_token