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",
|
||||
"web_server": True,
|
||||
"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