Updated .gitignore and made a removed networks from paperless docker-compose.env
This commit is contained in:
0
.env.template
Executable file → Normal file
0
.env.template
Executable file → Normal file
3
.gitignore
vendored
Executable file → Normal file
3
.gitignore
vendored
Executable file → Normal file
@@ -18,6 +18,9 @@
|
|||||||
*/media/
|
*/media/
|
||||||
|
|
||||||
# Specific service data patterns
|
# Specific service data patterns
|
||||||
|
adventurelog/
|
||||||
|
open-webui/
|
||||||
|
Arrs/
|
||||||
qBittorrent/config/
|
qBittorrent/config/
|
||||||
Homepage/config/
|
Homepage/config/
|
||||||
Homepage/data/
|
Homepage/data/
|
||||||
|
@@ -1 +0,0 @@
|
|||||||
4964985276.1738142532
|
|
@@ -1,28 +0,0 @@
|
|||||||
{
|
|
||||||
"data": [
|
|
||||||
{
|
|
||||||
"text": "Welcome to the new announcement section. It will keep you up-to-date with important news. You can dismiss this announcement by clicking on the button at the end of this line.",
|
|
||||||
"link": "",
|
|
||||||
"hash": "",
|
|
||||||
"dismissible": true,
|
|
||||||
"timestamp": 1676235999,
|
|
||||||
"enabled": true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"text": "Opensubtitles.org is now only accessible to VIP users. If you're still using it and do not plan to get a VIP subscription, you should consider disabling it and move to opensubtitles.com.",
|
|
||||||
"link": "",
|
|
||||||
"hash": "",
|
|
||||||
"dismissible": true,
|
|
||||||
"timestamp": 1700791126,
|
|
||||||
"enabled": true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"text": "We're about to drop support for legacy Sonarr and Radarr versions (prior to v3). If you're still using those legacy versions, please consider upgrading ASAP.",
|
|
||||||
"link": "",
|
|
||||||
"hash": "",
|
|
||||||
"dismissible": true,
|
|
||||||
"timestamp": 1731247748,
|
|
||||||
"enabled": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
@@ -1,274 +0,0 @@
|
|||||||
---
|
|
||||||
addic7ed:
|
|
||||||
cookies: ''
|
|
||||||
password: ''
|
|
||||||
user_agent: ''
|
|
||||||
username: ''
|
|
||||||
vip: false
|
|
||||||
analytics:
|
|
||||||
enabled: true
|
|
||||||
anidb:
|
|
||||||
api_client: ''
|
|
||||||
api_client_ver: 1
|
|
||||||
animetosho:
|
|
||||||
anidb_api_client: ''
|
|
||||||
anidb_api_client_ver: 1
|
|
||||||
search_threshold: 6
|
|
||||||
anticaptcha:
|
|
||||||
anti_captcha_key: ''
|
|
||||||
assrt:
|
|
||||||
token: ''
|
|
||||||
auth:
|
|
||||||
apikey: f4e633d900a236934a951cede0e9176a
|
|
||||||
password: ''
|
|
||||||
type: null
|
|
||||||
username: ''
|
|
||||||
avistaz:
|
|
||||||
cookies: ''
|
|
||||||
user_agent: ''
|
|
||||||
backup:
|
|
||||||
day: 6
|
|
||||||
folder: /config/backup
|
|
||||||
frequency: Weekly
|
|
||||||
hour: 3
|
|
||||||
retention: 31
|
|
||||||
betaseries:
|
|
||||||
token: ''
|
|
||||||
cinemaz:
|
|
||||||
cookies: ''
|
|
||||||
user_agent: ''
|
|
||||||
cors:
|
|
||||||
enabled: false
|
|
||||||
deathbycaptcha:
|
|
||||||
password: ''
|
|
||||||
username: ''
|
|
||||||
embeddedsubtitles:
|
|
||||||
fallback_lang: en
|
|
||||||
hi_fallback: false
|
|
||||||
included_codecs: []
|
|
||||||
timeout: 600
|
|
||||||
unknown_as_fallback: false
|
|
||||||
general:
|
|
||||||
adaptive_searching: true
|
|
||||||
adaptive_searching_delay: 3w
|
|
||||||
adaptive_searching_delta: 1w
|
|
||||||
anti_captcha_provider: null
|
|
||||||
auto_update: true
|
|
||||||
base_url: ''
|
|
||||||
branch: master
|
|
||||||
chmod: '0640'
|
|
||||||
chmod_enabled: false
|
|
||||||
days_to_upgrade_subs: 7
|
|
||||||
debug: false
|
|
||||||
default_und_audio_lang: ''
|
|
||||||
default_und_embedded_subtitles_lang: ''
|
|
||||||
dont_notify_manual_actions: false
|
|
||||||
embedded_subs_show_desired: true
|
|
||||||
embedded_subtitles_parser: ffprobe
|
|
||||||
enabled_integrations: []
|
|
||||||
enabled_providers: []
|
|
||||||
flask_secret_key: 2cea2a0dfa96a753c70ac9b5c6160ccb
|
|
||||||
hi_extension: hi
|
|
||||||
ignore_ass_subs: false
|
|
||||||
ignore_pgs_subs: false
|
|
||||||
ignore_vobsub_subs: false
|
|
||||||
ip: '*'
|
|
||||||
language_equals: []
|
|
||||||
minimum_score: 90
|
|
||||||
minimum_score_movie: 70
|
|
||||||
movie_default_enabled: false
|
|
||||||
movie_default_profile: ''
|
|
||||||
movie_tag_enabled: false
|
|
||||||
multithreading: true
|
|
||||||
page_size: 25
|
|
||||||
parse_embedded_audio_track: false
|
|
||||||
path_mappings: []
|
|
||||||
path_mappings_movie: []
|
|
||||||
port: 6767
|
|
||||||
postprocessing_cmd: ''
|
|
||||||
postprocessing_threshold: 90
|
|
||||||
postprocessing_threshold_movie: 70
|
|
||||||
remove_profile_tags: []
|
|
||||||
serie_default_enabled: false
|
|
||||||
serie_default_profile: ''
|
|
||||||
serie_tag_enabled: false
|
|
||||||
single_language: false
|
|
||||||
skip_hashing: false
|
|
||||||
subfolder: current
|
|
||||||
subfolder_custom: ''
|
|
||||||
subzero_mods: ''
|
|
||||||
theme: auto
|
|
||||||
upgrade_frequency: 12
|
|
||||||
upgrade_manual: true
|
|
||||||
upgrade_subs: true
|
|
||||||
use_embedded_subs: true
|
|
||||||
use_postprocessing: false
|
|
||||||
use_postprocessing_threshold: false
|
|
||||||
use_postprocessing_threshold_movie: false
|
|
||||||
use_radarr: false
|
|
||||||
use_scenename: true
|
|
||||||
use_sonarr: false
|
|
||||||
utf8_encode: true
|
|
||||||
wanted_search_frequency: 6
|
|
||||||
wanted_search_frequency_movie: 6
|
|
||||||
hdbits:
|
|
||||||
passkey: ''
|
|
||||||
username: ''
|
|
||||||
jimaku:
|
|
||||||
api_key: ''
|
|
||||||
enable_ai_subs: false
|
|
||||||
enable_archives_download: false
|
|
||||||
enable_name_search_fallback: true
|
|
||||||
karagarga:
|
|
||||||
f_password: ''
|
|
||||||
f_username: ''
|
|
||||||
password: ''
|
|
||||||
username: ''
|
|
||||||
ktuvit:
|
|
||||||
email: ''
|
|
||||||
hashed_password: ''
|
|
||||||
legendasdivx:
|
|
||||||
password: ''
|
|
||||||
skip_wrong_fps: false
|
|
||||||
username: ''
|
|
||||||
legendasnet:
|
|
||||||
password: ''
|
|
||||||
username: ''
|
|
||||||
log:
|
|
||||||
exclude_filter: ''
|
|
||||||
ignore_case: false
|
|
||||||
include_filter: ''
|
|
||||||
use_regex: false
|
|
||||||
movie_scores:
|
|
||||||
audio_codec: 3
|
|
||||||
edition: 1
|
|
||||||
hash: 119
|
|
||||||
hearing_impaired: 1
|
|
||||||
release_group: 13
|
|
||||||
resolution: 2
|
|
||||||
source: 7
|
|
||||||
streaming_service: 1
|
|
||||||
title: 60
|
|
||||||
video_codec: 2
|
|
||||||
year: 30
|
|
||||||
napiprojekt:
|
|
||||||
only_authors: false
|
|
||||||
only_real_names: false
|
|
||||||
napisy24:
|
|
||||||
password: ''
|
|
||||||
username: ''
|
|
||||||
opensubtitles:
|
|
||||||
password: ''
|
|
||||||
skip_wrong_fps: false
|
|
||||||
ssl: false
|
|
||||||
timeout: 15
|
|
||||||
use_tag_search: false
|
|
||||||
username: ''
|
|
||||||
vip: false
|
|
||||||
opensubtitlescom:
|
|
||||||
include_ai_translated: false
|
|
||||||
password: ''
|
|
||||||
use_hash: true
|
|
||||||
username: ''
|
|
||||||
podnapisi:
|
|
||||||
verify_ssl: true
|
|
||||||
postgresql:
|
|
||||||
database: ''
|
|
||||||
enabled: false
|
|
||||||
host: localhost
|
|
||||||
password: ''
|
|
||||||
port: 5432
|
|
||||||
username: ''
|
|
||||||
proxy:
|
|
||||||
exclude:
|
|
||||||
- localhost
|
|
||||||
- 127.0.0.1
|
|
||||||
password: ''
|
|
||||||
port: ''
|
|
||||||
type: null
|
|
||||||
url: ''
|
|
||||||
username: ''
|
|
||||||
radarr:
|
|
||||||
apikey: ''
|
|
||||||
base_url: /
|
|
||||||
defer_search_signalr: false
|
|
||||||
excluded_tags: []
|
|
||||||
full_update: Daily
|
|
||||||
full_update_day: 6
|
|
||||||
full_update_hour: 4
|
|
||||||
http_timeout: 60
|
|
||||||
ip: 127.0.0.1
|
|
||||||
movies_sync: 60
|
|
||||||
only_monitored: false
|
|
||||||
port: 7878
|
|
||||||
ssl: false
|
|
||||||
sync_only_monitored_movies: false
|
|
||||||
use_ffprobe_cache: true
|
|
||||||
series_scores:
|
|
||||||
audio_codec: 3
|
|
||||||
episode: 30
|
|
||||||
hash: 359
|
|
||||||
hearing_impaired: 1
|
|
||||||
release_group: 14
|
|
||||||
resolution: 2
|
|
||||||
season: 30
|
|
||||||
series: 180
|
|
||||||
source: 7
|
|
||||||
streaming_service: 1
|
|
||||||
video_codec: 2
|
|
||||||
year: 90
|
|
||||||
sonarr:
|
|
||||||
apikey: ''
|
|
||||||
base_url: /
|
|
||||||
defer_search_signalr: false
|
|
||||||
exclude_season_zero: false
|
|
||||||
excluded_series_types: []
|
|
||||||
excluded_tags: []
|
|
||||||
full_update: Daily
|
|
||||||
full_update_day: 6
|
|
||||||
full_update_hour: 4
|
|
||||||
http_timeout: 60
|
|
||||||
ip: 127.0.0.1
|
|
||||||
only_monitored: false
|
|
||||||
port: 8989
|
|
||||||
series_sync: 60
|
|
||||||
ssl: false
|
|
||||||
sync_only_monitored_episodes: false
|
|
||||||
sync_only_monitored_series: false
|
|
||||||
use_ffprobe_cache: true
|
|
||||||
subdl:
|
|
||||||
api_key: ''
|
|
||||||
subf2m:
|
|
||||||
user_agent: ''
|
|
||||||
verify_ssl: true
|
|
||||||
subsync:
|
|
||||||
checker:
|
|
||||||
blacklisted_languages: []
|
|
||||||
blacklisted_providers: []
|
|
||||||
debug: false
|
|
||||||
force_audio: false
|
|
||||||
gss: true
|
|
||||||
max_offset_seconds: 60
|
|
||||||
no_fix_framerate: true
|
|
||||||
subsync_movie_threshold: 70
|
|
||||||
subsync_threshold: 90
|
|
||||||
use_subsync: false
|
|
||||||
use_subsync_movie_threshold: false
|
|
||||||
use_subsync_threshold: false
|
|
||||||
titlovi:
|
|
||||||
password: ''
|
|
||||||
username: ''
|
|
||||||
titulky:
|
|
||||||
approved_only: false
|
|
||||||
password: ''
|
|
||||||
skip_wrong_fps: false
|
|
||||||
username: ''
|
|
||||||
whisperai:
|
|
||||||
endpoint: http://127.0.0.1:9000
|
|
||||||
loglevel: INFO
|
|
||||||
pass_video_name: false
|
|
||||||
response: 5
|
|
||||||
timeout: 3600
|
|
||||||
xsubs:
|
|
||||||
password: ''
|
|
||||||
username: ''
|
|
File diff suppressed because one or more lines are too long
@@ -1,16 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<key id="076c8fc0-d072-456f-a8c8-b5d4722d497d" version="1">
|
|
||||||
<creationDate>2025-01-29T09:22:08.4496837Z</creationDate>
|
|
||||||
<activationDate>2025-01-29T09:22:08.4381256Z</activationDate>
|
|
||||||
<expirationDate>2025-04-29T09:22:08.4381256Z</expirationDate>
|
|
||||||
<descriptor deserializerType="Microsoft.AspNetCore.DataProtection.AuthenticatedEncryption.ConfigurationModel.AuthenticatedEncryptorDescriptorDeserializer, Microsoft.AspNetCore.DataProtection, Version=6.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60">
|
|
||||||
<descriptor>
|
|
||||||
<encryption algorithm="AES_256_CBC" />
|
|
||||||
<validation algorithm="HMACSHA256" />
|
|
||||||
<masterKey p4:requiresEncryption="true" xmlns:p4="http://schemas.asp.net/2015/03/dataProtection">
|
|
||||||
<!-- Warning: the key below is in an unencrypted form. -->
|
|
||||||
<value>0i5M9BhZYxyRZUnt26LMNZ4ukvPyWz1P2CVr4iqIfZFTBANQrCeRHQL9RXc0dbhU7Gi2ECvniDLHgNUfcvZfaA==</value>
|
|
||||||
</masterKey>
|
|
||||||
</descriptor>
|
|
||||||
</descriptor>
|
|
||||||
</key>
|
|
@@ -1,16 +0,0 @@
|
|||||||
<Config>
|
|
||||||
<BindAddress>*</BindAddress>
|
|
||||||
<Port>9696</Port>
|
|
||||||
<SslPort>6969</SslPort>
|
|
||||||
<EnableSsl>False</EnableSsl>
|
|
||||||
<LaunchBrowser>True</LaunchBrowser>
|
|
||||||
<ApiKey>2e061a290fb24d8792ebb2d70b15bf67</ApiKey>
|
|
||||||
<AuthenticationMethod>None</AuthenticationMethod>
|
|
||||||
<AuthenticationRequired>Enabled</AuthenticationRequired>
|
|
||||||
<Branch>master</Branch>
|
|
||||||
<LogLevel>debug</LogLevel>
|
|
||||||
<SslCertPath></SslCertPath>
|
|
||||||
<SslCertPassword></SslCertPassword>
|
|
||||||
<UrlBase></UrlBase>
|
|
||||||
<InstanceName>Prowlarr</InstanceName>
|
|
||||||
</Config>
|
|
@@ -1,16 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<key id="4bdf6bfd-92c6-4723-8e40-a1abcb19db17" version="1">
|
|
||||||
<creationDate>2025-01-29T09:22:08.5915717Z</creationDate>
|
|
||||||
<activationDate>2025-01-29T09:22:08.5787744Z</activationDate>
|
|
||||||
<expirationDate>2025-04-29T09:22:08.5787744Z</expirationDate>
|
|
||||||
<descriptor deserializerType="Microsoft.AspNetCore.DataProtection.AuthenticatedEncryption.ConfigurationModel.AuthenticatedEncryptorDescriptorDeserializer, Microsoft.AspNetCore.DataProtection, Version=6.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60">
|
|
||||||
<descriptor>
|
|
||||||
<encryption algorithm="AES_256_CBC" />
|
|
||||||
<validation algorithm="HMACSHA256" />
|
|
||||||
<masterKey p4:requiresEncryption="true" xmlns:p4="http://schemas.asp.net/2015/03/dataProtection">
|
|
||||||
<!-- Warning: the key below is in an unencrypted form. -->
|
|
||||||
<value>u+w7PRy5v7u9F6/9RnBwbm0FeKyLyyR9/PPgCKe9Hvgapo2NBpjXgQOUO+mXRsYeTM8aL9sAMd80BJPAeQWZPA==</value>
|
|
||||||
</masterKey>
|
|
||||||
</descriptor>
|
|
||||||
</descriptor>
|
|
||||||
</key>
|
|
@@ -1,16 +0,0 @@
|
|||||||
<Config>
|
|
||||||
<BindAddress>*</BindAddress>
|
|
||||||
<Port>7878</Port>
|
|
||||||
<SslPort>9898</SslPort>
|
|
||||||
<EnableSsl>False</EnableSsl>
|
|
||||||
<LaunchBrowser>True</LaunchBrowser>
|
|
||||||
<ApiKey>6c4a2d0e6cd547ad9681d428786d45f7</ApiKey>
|
|
||||||
<AuthenticationMethod>None</AuthenticationMethod>
|
|
||||||
<AuthenticationRequired>Enabled</AuthenticationRequired>
|
|
||||||
<Branch>master</Branch>
|
|
||||||
<LogLevel>debug</LogLevel>
|
|
||||||
<SslCertPath></SslCertPath>
|
|
||||||
<SslCertPassword></SslCertPassword>
|
|
||||||
<UrlBase></UrlBase>
|
|
||||||
<InstanceName>Radarr</InstanceName>
|
|
||||||
</Config>
|
|
@@ -1,16 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<key id="7fe5740c-65be-4e37-9015-402fa9a48df0" version="1">
|
|
||||||
<creationDate>2025-01-29T09:22:08.4520862Z</creationDate>
|
|
||||||
<activationDate>2025-01-29T09:22:08.440317Z</activationDate>
|
|
||||||
<expirationDate>2025-04-29T09:22:08.440317Z</expirationDate>
|
|
||||||
<descriptor deserializerType="Microsoft.AspNetCore.DataProtection.AuthenticatedEncryption.ConfigurationModel.AuthenticatedEncryptorDescriptorDeserializer, Microsoft.AspNetCore.DataProtection, Version=6.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60">
|
|
||||||
<descriptor>
|
|
||||||
<encryption algorithm="AES_256_CBC" />
|
|
||||||
<validation algorithm="HMACSHA256" />
|
|
||||||
<masterKey p4:requiresEncryption="true" xmlns:p4="http://schemas.asp.net/2015/03/dataProtection">
|
|
||||||
<!-- Warning: the key below is in an unencrypted form. -->
|
|
||||||
<value>C1ExEujkCoR0uN5myc8nRpZboUVQDdEeu2EkGqISG1/m8hC/LiDeQj7GMEIZFTjxRUSB4JSfU2CvjsvYGGEt4A==</value>
|
|
||||||
</masterKey>
|
|
||||||
</descriptor>
|
|
||||||
</descriptor>
|
|
||||||
</key>
|
|
@@ -1,16 +0,0 @@
|
|||||||
<Config>
|
|
||||||
<BindAddress>*</BindAddress>
|
|
||||||
<Port>8989</Port>
|
|
||||||
<SslPort>9898</SslPort>
|
|
||||||
<EnableSsl>False</EnableSsl>
|
|
||||||
<LaunchBrowser>True</LaunchBrowser>
|
|
||||||
<ApiKey>c9dba8cdc00741f299e96c518372118f</ApiKey>
|
|
||||||
<AuthenticationMethod>None</AuthenticationMethod>
|
|
||||||
<AuthenticationRequired>Enabled</AuthenticationRequired>
|
|
||||||
<Branch>main</Branch>
|
|
||||||
<LogLevel>trace</LogLevel>
|
|
||||||
<SslCertPath></SslCertPath>
|
|
||||||
<SslCertPassword></SslCertPassword>
|
|
||||||
<UrlBase></UrlBase>
|
|
||||||
<InstanceName>Sonarr</InstanceName>
|
|
||||||
</Config>
|
|
@@ -1,54 +0,0 @@
|
|||||||
services:
|
|
||||||
web:
|
|
||||||
#build: ./frontend/
|
|
||||||
image: ghcr.io/seanmorley15/adventurelog-frontend:latest
|
|
||||||
container_name: adventurelog-frontend
|
|
||||||
restart: unless-stopped
|
|
||||||
environment:
|
|
||||||
- PUBLIC_SERVER_URL=http://server:8000 # Should be the service name of the backend with port 8000, even if you change the port in the backend service
|
|
||||||
- ORIGIN=https://adventure.kansaigaijin.com
|
|
||||||
- BODY_SIZE_LIMIT=Infinity
|
|
||||||
ports:
|
|
||||||
- "8015:3000"
|
|
||||||
depends_on:
|
|
||||||
- server
|
|
||||||
|
|
||||||
db:
|
|
||||||
image: postgis/postgis:15-3.3
|
|
||||||
container_name: adventurelog-db
|
|
||||||
restart: unless-stopped
|
|
||||||
environment:
|
|
||||||
POSTGRES_DB: database
|
|
||||||
POSTGRES_USER: adventure
|
|
||||||
POSTGRES_PASSWORD: Figureitout0313
|
|
||||||
volumes:
|
|
||||||
- postgres_data:/var/lib/postgresql/data/
|
|
||||||
|
|
||||||
server:
|
|
||||||
#build: ./backend/
|
|
||||||
image: ghcr.io/seanmorley15/adventurelog-backend:latest
|
|
||||||
container_name: adventurelog-backend
|
|
||||||
restart: unless-stopped
|
|
||||||
environment:
|
|
||||||
- PGHOST=db
|
|
||||||
- PGDATABASE=database
|
|
||||||
- PGUSER=adventure
|
|
||||||
- PGPASSWORD=Figureitout0313
|
|
||||||
- SECRET_KEY=Figureitout0313
|
|
||||||
- DJANGO_ADMIN_USERNAME=admin
|
|
||||||
- DJANGO_ADMIN_PASSWORD=admin
|
|
||||||
- DJANGO_ADMIN_EMAIL=jamie@kansaigaijin.com
|
|
||||||
- PUBLIC_URL=https://adventureadmin.kansaigaijin.com # Match the outward port, used for the creation of image urls
|
|
||||||
- CSRF_TRUSTED_ORIGINS=http://localhost:8016,http://localhost:8015,https://adventure.kansaigaijin.com,https://adventureadmin.kansaigaijin.com # Comma separated list of trusted origins for CSRF
|
|
||||||
- DEBUG=False
|
|
||||||
- FRONTEND_URL=https://adventure.kansaigaijin.com # Used for email generation. This should be the url of the frontend
|
|
||||||
ports:
|
|
||||||
- "8016:80"
|
|
||||||
depends_on:
|
|
||||||
- db
|
|
||||||
volumes:
|
|
||||||
- adventurelog_media:/code/media/
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
postgres_data:
|
|
||||||
adventurelog_media:
|
|
16
compose/document-management.yml
Executable file → Normal file
16
compose/document-management.yml
Executable file → Normal file
@@ -113,18 +113,6 @@ services:
|
|||||||
volumes:
|
volumes:
|
||||||
- aidata:/app/data
|
- aidata:/app/data
|
||||||
|
|
||||||
networks:
|
|
||||||
database_network:
|
|
||||||
external: true
|
|
||||||
|
|
||||||
volumes:
|
|
||||||
redisdata:
|
|
||||||
external: true
|
|
||||||
dbdata:
|
|
||||||
external: true
|
|
||||||
aidata:
|
|
||||||
external: true
|
|
||||||
|
|
||||||
paperless-db:
|
paperless-db:
|
||||||
container_name: paperless-db
|
container_name: paperless-db
|
||||||
image: mariadb:11
|
image: mariadb:11
|
||||||
@@ -148,3 +136,7 @@ volumes:
|
|||||||
start_period: 30s
|
start_period: 30s
|
||||||
security_opt:
|
security_opt:
|
||||||
- no-new-privileges:true
|
- no-new-privileges:true
|
||||||
|
|
||||||
|
networks:
|
||||||
|
database_network:
|
||||||
|
external: true
|
0
compose/media-stack.yml
Executable file → Normal file
0
compose/media-stack.yml
Executable file → Normal file
0
compose/monitoring.yml
Executable file → Normal file
0
compose/monitoring.yml
Executable file → Normal file
0
compose/utility-stack.yml → compose/utilities.yml
Executable file → Normal file
0
compose/utility-stack.yml → compose/utilities.yml
Executable file → Normal file
10
docker-compose.yml
Executable file → Normal file
10
docker-compose.yml
Executable file → Normal file
@@ -10,16 +10,10 @@ include:
|
|||||||
# Global networks
|
# Global networks
|
||||||
networks:
|
networks:
|
||||||
arr_network:
|
arr_network:
|
||||||
driver: bridge
|
external: true
|
||||||
ipam:
|
|
||||||
config:
|
|
||||||
- subnet: 172.20.0.0/16
|
|
||||||
|
|
||||||
database_network:
|
database_network:
|
||||||
driver: bridge
|
external: true
|
||||||
ipam:
|
|
||||||
config:
|
|
||||||
- subnet: 172.21.0.0/16
|
|
||||||
|
|
||||||
# Global volumes
|
# Global volumes
|
||||||
volumes:
|
volumes:
|
||||||
|
70
git-commands.txt
Normal file
70
git-commands.txt
Normal file
@@ -0,0 +1,70 @@
|
|||||||
|
Git Command-Line Reference Guide
|
||||||
|
This guide covers essential Git commands for managing your projects.
|
||||||
|
|
||||||
|
Setting Up and Initializing
|
||||||
|
git init
|
||||||
|
|
||||||
|
What it does: Initializes a new local Git repository in the current directory. This creates the hidden .git folder.
|
||||||
|
|
||||||
|
git clone [url]
|
||||||
|
|
||||||
|
What it does: Creates a local copy of a remote repository. This is what you'll use to get a fresh copy of your Gitea repository.
|
||||||
|
|
||||||
|
Making and Saving Changes
|
||||||
|
git status
|
||||||
|
|
||||||
|
What it does: Shows the status of your working directory. It tells you which files are staged, unstaged, or untracked.
|
||||||
|
|
||||||
|
git add [file]
|
||||||
|
|
||||||
|
What it does: Stages a file, preparing it to be committed. Use git add . to stage all modified files in the current directory.
|
||||||
|
|
||||||
|
git commit -m "[message]"
|
||||||
|
|
||||||
|
What it does: Saves the staged changes to your local repository history. The -m flag allows you to write a brief, descriptive message for your commit.
|
||||||
|
|
||||||
|
git commit --amend
|
||||||
|
|
||||||
|
What it does: Amends the most recent commit. This is useful for fixing a typo in your commit message or adding a file you forgot to stage.
|
||||||
|
|
||||||
|
Working with the Remote Repository
|
||||||
|
git remote -v
|
||||||
|
|
||||||
|
What it does: Lists the remote repositories you've configured. This is useful for confirming that your local repository is connected to the correct Gitea URL.
|
||||||
|
|
||||||
|
git remote set-url origin [new-url]
|
||||||
|
|
||||||
|
What it does: Changes the URL for a remote repository. You would use this command to change the remote from GitHub to your Gitea instance.
|
||||||
|
|
||||||
|
git push
|
||||||
|
|
||||||
|
What it does: Pushes your committed local changes to the remote repository. Use git push -u origin main the first time you push to a new remote to set the upstream branch.
|
||||||
|
|
||||||
|
git pull
|
||||||
|
|
||||||
|
What it does: Fetches and downloads content from the remote repository and immediately integrates (merges) it into your local branch.
|
||||||
|
|
||||||
|
git fetch
|
||||||
|
|
||||||
|
What it does: Downloads new data from a remote repository but doesn't integrate it into your working files. This lets you review changes before merging.
|
||||||
|
|
||||||
|
Managing Branches
|
||||||
|
git branch
|
||||||
|
|
||||||
|
What it does: Lists all local branches in your repository.
|
||||||
|
|
||||||
|
git branch [branch-name]
|
||||||
|
|
||||||
|
What it does: Creates a new local branch.
|
||||||
|
|
||||||
|
git checkout [branch-name]
|
||||||
|
|
||||||
|
What it does: Switches to an existing branch. Use git checkout -b [new-branch] to create and switch to a new branch in one command.
|
||||||
|
|
||||||
|
git merge [branch-name]
|
||||||
|
|
||||||
|
What it does: Merges the specified branch's history into your current branch.
|
||||||
|
|
||||||
|
git branch -d [branch-name]
|
||||||
|
|
||||||
|
What it does: Deletes the local branch.
|
Binary file not shown.
@@ -1,179 +0,0 @@
|
|||||||
# syntax=docker/dockerfile:1
|
|
||||||
# Initialize device type args
|
|
||||||
# use build args in the docker build command with --build-arg="BUILDARG=true"
|
|
||||||
ARG USE_CUDA=false
|
|
||||||
ARG USE_OLLAMA=false
|
|
||||||
# Tested with cu117 for CUDA 11 and cu121 for CUDA 12 (default)
|
|
||||||
ARG USE_CUDA_VER=cu128
|
|
||||||
# any sentence transformer model; models to use can be found at https://huggingface.co/models?library=sentence-transformers
|
|
||||||
# Leaderboard: https://huggingface.co/spaces/mteb/leaderboard
|
|
||||||
# for better performance and multilangauge support use "intfloat/multilingual-e5-large" (~2.5GB) or "intfloat/multilingual-e5-base" (~1.5GB)
|
|
||||||
# IMPORTANT: If you change the embedding model (sentence-transformers/all-MiniLM-L6-v2) and vice versa, you aren't able to use RAG Chat with your previous documents loaded in the WebUI! You need to re-embed them.
|
|
||||||
ARG USE_EMBEDDING_MODEL=sentence-transformers/all-MiniLM-L6-v2
|
|
||||||
ARG USE_RERANKING_MODEL=""
|
|
||||||
|
|
||||||
# Tiktoken encoding name; models to use can be found at https://huggingface.co/models?library=tiktoken
|
|
||||||
ARG USE_TIKTOKEN_ENCODING_NAME="cl100k_base"
|
|
||||||
|
|
||||||
ARG BUILD_HASH=dev-build
|
|
||||||
# Override at your own risk - non-root configurations are untested
|
|
||||||
ARG UID=0
|
|
||||||
ARG GID=0
|
|
||||||
|
|
||||||
######## WebUI frontend ########
|
|
||||||
FROM --platform=$BUILDPLATFORM node:22-alpine3.20 AS build
|
|
||||||
ARG BUILD_HASH
|
|
||||||
|
|
||||||
WORKDIR /app
|
|
||||||
|
|
||||||
# to store git revision in build
|
|
||||||
RUN apk add --no-cache git
|
|
||||||
|
|
||||||
COPY package.json package-lock.json ./
|
|
||||||
RUN npm ci
|
|
||||||
|
|
||||||
COPY . .
|
|
||||||
ENV APP_BUILD_HASH=${BUILD_HASH}
|
|
||||||
RUN npm run build
|
|
||||||
|
|
||||||
######## WebUI backend ########
|
|
||||||
FROM python:3.11-slim-bookworm AS base
|
|
||||||
|
|
||||||
# Use args
|
|
||||||
ARG USE_CUDA
|
|
||||||
ARG USE_OLLAMA
|
|
||||||
ARG USE_CUDA_VER
|
|
||||||
ARG USE_EMBEDDING_MODEL
|
|
||||||
ARG USE_RERANKING_MODEL
|
|
||||||
ARG UID
|
|
||||||
ARG GID
|
|
||||||
|
|
||||||
## Basis ##
|
|
||||||
ENV ENV=prod \
|
|
||||||
PORT=8080 \
|
|
||||||
# pass build args to the build
|
|
||||||
USE_OLLAMA_DOCKER=${USE_OLLAMA} \
|
|
||||||
USE_CUDA_DOCKER=${USE_CUDA} \
|
|
||||||
USE_CUDA_DOCKER_VER=${USE_CUDA_VER} \
|
|
||||||
USE_EMBEDDING_MODEL_DOCKER=${USE_EMBEDDING_MODEL} \
|
|
||||||
USE_RERANKING_MODEL_DOCKER=${USE_RERANKING_MODEL}
|
|
||||||
|
|
||||||
## Basis URL Config ##
|
|
||||||
ENV OLLAMA_BASE_URL="/ollama" \
|
|
||||||
OPENAI_API_BASE_URL=""
|
|
||||||
|
|
||||||
## API Key and Security Config ##
|
|
||||||
ENV OPENAI_API_KEY="" \
|
|
||||||
WEBUI_SECRET_KEY="" \
|
|
||||||
SCARF_NO_ANALYTICS=true \
|
|
||||||
DO_NOT_TRACK=true \
|
|
||||||
ANONYMIZED_TELEMETRY=false
|
|
||||||
|
|
||||||
#### Other models #########################################################
|
|
||||||
## whisper TTS model settings ##
|
|
||||||
ENV WHISPER_MODEL="base" \
|
|
||||||
WHISPER_MODEL_DIR="/app/backend/data/cache/whisper/models"
|
|
||||||
|
|
||||||
## RAG Embedding model settings ##
|
|
||||||
ENV RAG_EMBEDDING_MODEL="$USE_EMBEDDING_MODEL_DOCKER" \
|
|
||||||
RAG_RERANKING_MODEL="$USE_RERANKING_MODEL_DOCKER" \
|
|
||||||
SENTENCE_TRANSFORMERS_HOME="/app/backend/data/cache/embedding/models"
|
|
||||||
|
|
||||||
## Tiktoken model settings ##
|
|
||||||
ENV TIKTOKEN_ENCODING_NAME="cl100k_base" \
|
|
||||||
TIKTOKEN_CACHE_DIR="/app/backend/data/cache/tiktoken"
|
|
||||||
|
|
||||||
## Hugging Face download cache ##
|
|
||||||
ENV HF_HOME="/app/backend/data/cache/embedding/models"
|
|
||||||
|
|
||||||
## Torch Extensions ##
|
|
||||||
# ENV TORCH_EXTENSIONS_DIR="/.cache/torch_extensions"
|
|
||||||
|
|
||||||
#### Other models ##########################################################
|
|
||||||
|
|
||||||
WORKDIR /app/backend
|
|
||||||
|
|
||||||
ENV HOME=/root
|
|
||||||
# Create user and group if not root
|
|
||||||
RUN if [ $UID -ne 0 ]; then \
|
|
||||||
if [ $GID -ne 0 ]; then \
|
|
||||||
addgroup --gid $GID app; \
|
|
||||||
fi; \
|
|
||||||
adduser --uid $UID --gid $GID --home $HOME --disabled-password --no-create-home app; \
|
|
||||||
fi
|
|
||||||
|
|
||||||
RUN mkdir -p $HOME/.cache/chroma
|
|
||||||
RUN echo -n 00000000-0000-0000-0000-000000000000 > $HOME/.cache/chroma/telemetry_user_id
|
|
||||||
|
|
||||||
# Make sure the user has access to the app and root directory
|
|
||||||
RUN chown -R $UID:$GID /app $HOME
|
|
||||||
|
|
||||||
RUN if [ "$USE_OLLAMA" = "true" ]; then \
|
|
||||||
apt-get update && \
|
|
||||||
# Install pandoc and netcat
|
|
||||||
apt-get install -y --no-install-recommends git build-essential pandoc netcat-openbsd curl && \
|
|
||||||
apt-get install -y --no-install-recommends gcc python3-dev && \
|
|
||||||
# for RAG OCR
|
|
||||||
apt-get install -y --no-install-recommends ffmpeg libsm6 libxext6 && \
|
|
||||||
# install helper tools
|
|
||||||
apt-get install -y --no-install-recommends curl jq && \
|
|
||||||
# install ollama
|
|
||||||
curl -fsSL https://ollama.com/install.sh | sh && \
|
|
||||||
# cleanup
|
|
||||||
rm -rf /var/lib/apt/lists/*; \
|
|
||||||
else \
|
|
||||||
apt-get update && \
|
|
||||||
# Install pandoc, netcat and gcc
|
|
||||||
apt-get install -y --no-install-recommends git build-essential pandoc gcc netcat-openbsd curl jq && \
|
|
||||||
apt-get install -y --no-install-recommends gcc python3-dev && \
|
|
||||||
# for RAG OCR
|
|
||||||
apt-get install -y --no-install-recommends ffmpeg libsm6 libxext6 && \
|
|
||||||
# cleanup
|
|
||||||
rm -rf /var/lib/apt/lists/*; \
|
|
||||||
fi
|
|
||||||
|
|
||||||
# install python dependencies
|
|
||||||
COPY --chown=$UID:$GID ./backend/requirements.txt ./requirements.txt
|
|
||||||
|
|
||||||
RUN pip3 install --no-cache-dir uv && \
|
|
||||||
if [ "$USE_CUDA" = "true" ]; then \
|
|
||||||
# If you use CUDA the whisper and embedding model will be downloaded on first use
|
|
||||||
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/$USE_CUDA_DOCKER_VER --no-cache-dir && \
|
|
||||||
uv pip install --system -r requirements.txt --no-cache-dir && \
|
|
||||||
python -c "import os; from sentence_transformers import SentenceTransformer; SentenceTransformer(os.environ['RAG_EMBEDDING_MODEL'], device='cpu')" && \
|
|
||||||
python -c "import os; from faster_whisper import WhisperModel; WhisperModel(os.environ['WHISPER_MODEL'], device='cpu', compute_type='int8', download_root=os.environ['WHISPER_MODEL_DIR'])"; \
|
|
||||||
python -c "import os; import tiktoken; tiktoken.get_encoding(os.environ['TIKTOKEN_ENCODING_NAME'])"; \
|
|
||||||
else \
|
|
||||||
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu --no-cache-dir && \
|
|
||||||
uv pip install --system -r requirements.txt --no-cache-dir && \
|
|
||||||
python -c "import os; from sentence_transformers import SentenceTransformer; SentenceTransformer(os.environ['RAG_EMBEDDING_MODEL'], device='cpu')" && \
|
|
||||||
python -c "import os; from faster_whisper import WhisperModel; WhisperModel(os.environ['WHISPER_MODEL'], device='cpu', compute_type='int8', download_root=os.environ['WHISPER_MODEL_DIR'])"; \
|
|
||||||
python -c "import os; import tiktoken; tiktoken.get_encoding(os.environ['TIKTOKEN_ENCODING_NAME'])"; \
|
|
||||||
fi; \
|
|
||||||
chown -R $UID:$GID /app/backend/data/
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# copy embedding weight from build
|
|
||||||
# RUN mkdir -p /root/.cache/chroma/onnx_models/all-MiniLM-L6-v2
|
|
||||||
# COPY --from=build /app/onnx /root/.cache/chroma/onnx_models/all-MiniLM-L6-v2/onnx
|
|
||||||
|
|
||||||
# copy built frontend files
|
|
||||||
COPY --chown=$UID:$GID --from=build /app/build /app/build
|
|
||||||
COPY --chown=$UID:$GID --from=build /app/CHANGELOG.md /app/CHANGELOG.md
|
|
||||||
COPY --chown=$UID:$GID --from=build /app/package.json /app/package.json
|
|
||||||
|
|
||||||
# copy backend files
|
|
||||||
COPY --chown=$UID:$GID ./backend .
|
|
||||||
|
|
||||||
EXPOSE 8080
|
|
||||||
|
|
||||||
HEALTHCHECK CMD curl --silent --fail http://localhost:${PORT:-8080}/health | jq -ne 'input.status == true' || exit 1
|
|
||||||
|
|
||||||
USER $UID:$GID
|
|
||||||
|
|
||||||
ARG BUILD_HASH
|
|
||||||
ENV WEBUI_BUILD_VERSION=${BUILD_HASH}
|
|
||||||
ENV DOCKER=true
|
|
||||||
|
|
||||||
CMD [ "bash", "start.sh"]
|
|
0
racknerd-converter/Dockerfile
Executable file → Normal file
0
racknerd-converter/Dockerfile
Executable file → Normal file
0
racknerd-converter/README.md
Executable file → Normal file
0
racknerd-converter/README.md
Executable file → Normal file
0
racknerd-converter/kvmapiconv.py
Executable file → Normal file
0
racknerd-converter/kvmapiconv.py
Executable file → Normal file
0
racknerd-converter/requirements.txt
Executable file → Normal file
0
racknerd-converter/requirements.txt
Executable file → Normal file
@@ -1 +0,0 @@
|
|||||||
i5Dssz20RgmarmAl9Mo1ugp6HxxStmcJtWWkrbuS06ap2pOlmROCfScIEsHuyBXA
|
|
@@ -1 +0,0 @@
|
|||||||
B6vqqwdsRmdYOhUzo5RUgioAYaKdwZpVSmi5PCFKxYIko1LtazXjaERnKCzG3zl8
|
|
@@ -1 +0,0 @@
|
|||||||
nMtLQfZ4v8SH63aL54mM8EOtg2eLrobnElYtjsyKjBRzBa8CyDc4EwYfJZpgUmal
|
|
Reference in New Issue
Block a user