adding firefly
This commit is contained in:
parent
9816dca035
commit
c1400b8110
4 changed files with 264 additions and 1 deletions
|
@ -15,7 +15,7 @@ servers = [
|
||||||
"ssh_user": "root",
|
"ssh_user": "root",
|
||||||
"web_server": True,
|
"web_server": True,
|
||||||
"services": [
|
"services": [
|
||||||
"nginx", "immich", "nodered"
|
"nginx", "immich", "nodered", "firefly"
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
148
services/firefly/.env.example
Normal file
148
services/firefly/.env.example
Normal file
|
@ -0,0 +1,148 @@
|
||||||
|
APP_ENV=production
|
||||||
|
APP_DEBUG=false
|
||||||
|
SITE_OWNER=kropikuba@gmail.com
|
||||||
|
APP_URL=
|
||||||
|
HOST=
|
||||||
|
# Must be 32 characters
|
||||||
|
APP_KEY=
|
||||||
|
|
||||||
|
DEFAULT_LANGUAGE=en_US
|
||||||
|
DEFAULT_LOCALE=equal
|
||||||
|
|
||||||
|
TZ=Europe/Prague
|
||||||
|
|
||||||
|
TRUSTED_PROXIES=**
|
||||||
|
|
||||||
|
# Also available are 'syslog', 'errorlog' and 'stdout' which will log to the system itself.
|
||||||
|
# A rotating log option is 'daily', creates 5 files that (surprise) rotate.
|
||||||
|
# A cool option is 'papertrail' for cloud logging
|
||||||
|
# Default setting 'stack' will log to 'daily' and to 'stdout' at the same time.
|
||||||
|
LOG_CHANNEL=stack
|
||||||
|
APP_LOG_LEVEL=notice
|
||||||
|
AUDIT_LOG_LEVEL=emergency
|
||||||
|
AUDIT_LOG_CHANNEL=
|
||||||
|
|
||||||
|
PAPERTRAIL_HOST=
|
||||||
|
PAPERTRAIL_PORT=
|
||||||
|
|
||||||
|
# Use "pgsql" for PostgreSQL
|
||||||
|
# Use "mysql" for MySQL and MariaDB.
|
||||||
|
# Use "sqlite" for SQLite.
|
||||||
|
DB_CONNECTION=mysql
|
||||||
|
DB_HOST=db
|
||||||
|
DB_PORT=3306
|
||||||
|
DB_DATABASE=firefly
|
||||||
|
DB_USERNAME=firefly
|
||||||
|
DB_PASSWORD=eu0ecaSileengoyoh2ohlohthi8thoo6
|
||||||
|
DB_SOCKET=
|
||||||
|
|
||||||
|
# MySQL supports SSL. You can configure it here.
|
||||||
|
# If you use Docker or similar, you can set these variables from a file by appending them with _FILE
|
||||||
|
MYSQL_USE_SSL=false
|
||||||
|
MYSQL_SSL_VERIFY_SERVER_CERT=true
|
||||||
|
# You need to set at least of these options
|
||||||
|
MYSQL_SSL_CAPATH=/etc/ssl/certs/
|
||||||
|
MYSQL_SSL_CA=
|
||||||
|
MYSQL_SSL_CERT=
|
||||||
|
MYSQL_SSL_KEY=
|
||||||
|
MYSQL_SSL_CIPHER=
|
||||||
|
|
||||||
|
# PostgreSQL supports SSL. You can configure it here.
|
||||||
|
# If you use Docker or similar, you can set these variables from a file by appending them with _FILE
|
||||||
|
PGSQL_SSL_MODE=prefer
|
||||||
|
PGSQL_SSL_ROOT_CERT=null
|
||||||
|
PGSQL_SSL_CERT=null
|
||||||
|
PGSQL_SSL_KEY=null
|
||||||
|
PGSQL_SSL_CRL_FILE=null
|
||||||
|
PGSQL_SCHEMA=public
|
||||||
|
|
||||||
|
CACHE_DRIVER=file
|
||||||
|
SESSION_DRIVER=file
|
||||||
|
# If you set either of the options above to 'redis', you might want to update these settings too
|
||||||
|
# REDIS_PORT_FILE to set the value from a file instead of from an environment variable
|
||||||
|
REDIS_SCHEME=tcp
|
||||||
|
# use only when using 'unix' for REDIS_SCHEME. Leave empty otherwise.
|
||||||
|
REDIS_PATH=
|
||||||
|
# use only when using 'tcp' or 'http' for REDIS_SCHEME. Leave empty otherwise.
|
||||||
|
REDIS_HOST=127.0.0.1
|
||||||
|
REDIS_PORT=6379
|
||||||
|
# Use only with Redis 6+ with proper ACL set. Leave empty otherwise.
|
||||||
|
REDIS_USERNAME=
|
||||||
|
REDIS_PASSWORD=
|
||||||
|
# always use quotes and make sure redis db "0" and "1" exists. Otherwise change accordingly.
|
||||||
|
REDIS_DB="0"
|
||||||
|
REDIS_CACHE_DB="1"
|
||||||
|
|
||||||
|
# Setting samesite to "strict" may give you trouble logging in.
|
||||||
|
COOKIE_PATH="/"
|
||||||
|
COOKIE_DOMAIN=
|
||||||
|
COOKIE_SECURE=false
|
||||||
|
COOKIE_SAMESITE=lax
|
||||||
|
|
||||||
|
# If you want Firefly III to email you, update these settings
|
||||||
|
# For instructions, see: https://docs.firefly-iii.org/how-to/firefly-iii/advanced/notifications/#email
|
||||||
|
# If you use Docker or similar, you can set these variables from a file by appending them with _FILE
|
||||||
|
MAIL_MAILER=log
|
||||||
|
MAIL_HOST=null
|
||||||
|
MAIL_PORT=2525
|
||||||
|
MAIL_FROM=changeme@example.com
|
||||||
|
MAIL_USERNAME=null
|
||||||
|
MAIL_PASSWORD=null
|
||||||
|
MAIL_ENCRYPTION=null
|
||||||
|
MAIL_SENDMAIL_COMMAND=
|
||||||
|
|
||||||
|
MAILGUN_DOMAIN=
|
||||||
|
MAILGUN_SECRET=
|
||||||
|
MAILGUN_ENDPOINT=api.mailgun.net
|
||||||
|
MANDRILL_SECRET=
|
||||||
|
SPARKPOST_SECRET=
|
||||||
|
|
||||||
|
SEND_ERROR_MESSAGE=true
|
||||||
|
SEND_REPORT_JOURNALS=true
|
||||||
|
ENABLE_EXTERNAL_MAP=false
|
||||||
|
ENABLE_EXCHANGE_RATES=false
|
||||||
|
ENABLE_EXTERNAL_RATES=false
|
||||||
|
MAP_DEFAULT_LAT=51.983333
|
||||||
|
MAP_DEFAULT_LONG=5.916667
|
||||||
|
MAP_DEFAULT_ZOOM=6
|
||||||
|
|
||||||
|
VALID_URL_PROTOCOLS=
|
||||||
|
|
||||||
|
AUTHENTICATION_GUARD=web
|
||||||
|
AUTHENTICATION_GUARD_HEADER=REMOTE_USER
|
||||||
|
AUTHENTICATION_GUARD_EMAIL=
|
||||||
|
PASSPORT_PRIVATE_KEY=
|
||||||
|
PASSPORT_PUBLIC_KEY=
|
||||||
|
CUSTOM_LOGOUT_URL=
|
||||||
|
|
||||||
|
DISABLE_FRAME_HEADER=false
|
||||||
|
DISABLE_CSP_HEADER=false
|
||||||
|
TRACKER_SITE_ID=
|
||||||
|
TRACKER_URL=
|
||||||
|
ALLOW_WEBHOOKS=false
|
||||||
|
|
||||||
|
STATIC_CRON_TOKEN=aequ4hahL3cha7ahphoh0quu0ainoo7f
|
||||||
|
|
||||||
|
DKR_BUILD_LOCALE=false
|
||||||
|
DKR_CHECK_SQLITE=true
|
||||||
|
DKR_RUN_MIGRATION=true
|
||||||
|
DKR_RUN_UPGRADE=true
|
||||||
|
DKR_RUN_VERIFY=true
|
||||||
|
DKR_RUN_REPORT=true
|
||||||
|
|
||||||
|
DKR_RUN_PASSPORT_INSTALL=true
|
||||||
|
|
||||||
|
# Leave the following configuration vars as is.
|
||||||
|
# Unless you like to tinker and know what you're doing.
|
||||||
|
APP_NAME=FireflyIII
|
||||||
|
BROADCAST_DRIVER=log
|
||||||
|
QUEUE_DRIVER=sync
|
||||||
|
CACHE_PREFIX=firefly
|
||||||
|
PUSHER_KEY=
|
||||||
|
IPINFO_TOKEN=
|
||||||
|
PUSHER_SECRET=
|
||||||
|
PUSHER_ID=
|
||||||
|
DEMO_USERNAME=
|
||||||
|
DEMO_PASSWORD=
|
||||||
|
|
||||||
|
FIREFLY_III_LAYOUT=v1
|
60
services/firefly/.importer.env
Normal file
60
services/firefly/.importer.env
Normal file
|
@ -0,0 +1,60 @@
|
||||||
|
USE_CACHE=false
|
||||||
|
IGNORE_DUPLICATE_ERRORS=false
|
||||||
|
|
||||||
|
AUTO_IMPORT_SECRET=
|
||||||
|
CAN_POST_AUTOIMPORT=false
|
||||||
|
CAN_POST_FILES=false
|
||||||
|
|
||||||
|
IMPORT_DIR_ALLOWLIST=
|
||||||
|
|
||||||
|
FALLBACK_IN_DIR=false
|
||||||
|
|
||||||
|
VERIFY_TLS_SECURITY=true
|
||||||
|
|
||||||
|
JSON_CONFIGURATION_DIR=
|
||||||
|
|
||||||
|
CONNECTION_TIMEOUT=31.41
|
||||||
|
|
||||||
|
APP_ENV=local
|
||||||
|
APP_DEBUG=false
|
||||||
|
|
||||||
|
LOG_CHANNEL=stack
|
||||||
|
LOG_RETURN_JSON=false
|
||||||
|
LOG_LEVEL=debug
|
||||||
|
TRUSTED_PROXIES=**
|
||||||
|
TZ=Europe/Prague
|
||||||
|
|
||||||
|
ASSET_URL=
|
||||||
|
ENABLE_MAIL_REPORT=false
|
||||||
|
EXPECT_SECURE_URL=true
|
||||||
|
|
||||||
|
MAIL_MAILER=
|
||||||
|
MAIL_DESTINATION=noreply@example.com
|
||||||
|
MAIL_FROM_ADDRESS=noreply@example.com
|
||||||
|
MAIL_HOST=smtp.mailtrap.io
|
||||||
|
MAIL_PORT=2525
|
||||||
|
MAIL_USERNAME=username
|
||||||
|
MAIL_PASSWORD=password
|
||||||
|
MAIL_ENCRYPTION=null
|
||||||
|
|
||||||
|
MAILGUN_DOMAIN=
|
||||||
|
MAILGUN_SECRET=
|
||||||
|
MAILGUN_ENDPOINT=
|
||||||
|
POSTMARK_TOKEN=
|
||||||
|
|
||||||
|
BROADCAST_DRIVER=log
|
||||||
|
CACHE_DRIVER=file
|
||||||
|
QUEUE_CONNECTION=sync
|
||||||
|
SESSION_DRIVER=file
|
||||||
|
SESSION_LIFETIME=120
|
||||||
|
IS_EXTERNAL=false
|
||||||
|
|
||||||
|
REDIS_HOST=127.0.0.1
|
||||||
|
REDIS_PASSWORD=null
|
||||||
|
REDIS_PORT=6379
|
||||||
|
|
||||||
|
# always use quotes
|
||||||
|
REDIS_DB="0"
|
||||||
|
REDIS_CACHE_DB="1"
|
||||||
|
|
||||||
|
APP_NAME=DataImporter
|
55
services/firefly/docker-compose.yml
Normal file
55
services/firefly/docker-compose.yml
Normal file
|
@ -0,0 +1,55 @@
|
||||||
|
networks:
|
||||||
|
traefik-net:
|
||||||
|
external: true
|
||||||
|
name: traefik-net
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
firefly_upload:
|
||||||
|
firefly_db:
|
||||||
|
|
||||||
|
services:
|
||||||
|
firefly:
|
||||||
|
image: fireflyiii/core:latest
|
||||||
|
volumes:
|
||||||
|
- firefly_upload:/var/www/html/storage/upload
|
||||||
|
env_file: .env
|
||||||
|
networks:
|
||||||
|
- traefik-net
|
||||||
|
- default
|
||||||
|
depends_on:
|
||||||
|
- db
|
||||||
|
deploy:
|
||||||
|
labels:
|
||||||
|
- traefik.enable=true
|
||||||
|
- traefik.docker.network=traefik-net
|
||||||
|
- traefik.http.routers.firefly.rule=Host(`${HOST}`)
|
||||||
|
- traefik.http.routers.firefly.entrypoints=${ENTRYPOINTS:-websecure}
|
||||||
|
- traefik.http.routers.firefly.tls.certresolver=le
|
||||||
|
- traefik.http.services.firefly.loadbalancer.server.port=8080
|
||||||
|
db:
|
||||||
|
image: mariadb:lts
|
||||||
|
environment:
|
||||||
|
- MYSQL_PASSWORD=${DB_PASSWORD}
|
||||||
|
- MYSQL_DATABASE=${DB_DATABASE}
|
||||||
|
- MYSQL_USER=${DB_USERNAME}
|
||||||
|
- MYSQL_RANDOM_ROOT_PASSWORD=true
|
||||||
|
volumes:
|
||||||
|
- firefly_db:/var/lib/mysql
|
||||||
|
cron:
|
||||||
|
image: alpine
|
||||||
|
restart: always
|
||||||
|
command: sh -c "echo \"0 3 * * * wget -qO- http://firefly:8080/api/v1/cron/${STATIC_CRON_TOKEN}\" | crontab - && crond -f -L /dev/stdout"
|
||||||
|
|
||||||
|
# TODO: WIP
|
||||||
|
# importer:
|
||||||
|
# image: fireflyiii/data-importer:latest
|
||||||
|
# env_file:
|
||||||
|
# - .importer.env
|
||||||
|
# environment:
|
||||||
|
# - FIREFLY_III_URL=http://firefly
|
||||||
|
# - VANITY_URL=https://${HOST}
|
||||||
|
# depends_on:
|
||||||
|
# - firefly
|
||||||
|
# networks:
|
||||||
|
# - traefik-net
|
||||||
|
# - default
|
Loading…
Reference in a new issue