From 5ce753bd717a58bfdf3fcc9fd24904d32e310af1 Mon Sep 17 00:00:00 2001 From: Chris King Date: Mon, 16 Dec 2024 02:28:59 -0800 Subject: [PATCH] init stashapp docker add stashapp specific gitignore entries --- .gitignore | 4 +- stashapp/config/config.yml | 756 ++++++++++++++++++++++++++++++++++++ stashapp/config/custom.css | 0 stashapp/docker-compose.yml | 51 +++ 4 files changed, 810 insertions(+), 1 deletion(-) create mode 100644 stashapp/config/config.yml create mode 100755 stashapp/config/custom.css create mode 100644 stashapp/docker-compose.yml diff --git a/.gitignore b/.gitignore index 65d1f87..df167bf 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,5 @@ data/ secrets/ -tmp/ \ No newline at end of file +tmp/ +stashapp/**/config.yml.* +stashapp/**/icon.png \ No newline at end of file diff --git a/stashapp/config/config.yml b/stashapp/config/config.yml new file mode 100644 index 0000000..eedc62c --- /dev/null +++ b/stashapp/config/config.yml @@ -0,0 +1,756 @@ +api_key: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1aWQiOiJjaHJpcyIsInN1YiI6IkFQSUtleSIsImlhdCI6MTcwNzg0MTk4OX0.nqDqNfNNNVHLuvA3wsvcR8aBwYjqUkCGDAn3AiBMU34 +blobs_path: /blobs/ +blobs_storage: FILESYSTEM +calculate_md5: false +continue_playlist_default: true +create_image_clip_from_videos: false +cssenabled: false +dangerous_allow_public_without_auth: "false" +database: /db/stash-go.sqlite +defaults: + auto_tag_task: + paths: [] + performers: + - '*' + studios: + - '*' + tags: [] + generate_task: + clippreviews: false + covers: false + forcetranscodes: false + imagepreviews: false + imagethumbnails: false + interactiveheatmapsspeeds: false + markerids: [] + markerimagepreviews: false + markers: true + markerscreenshots: false + overwrite: false + phashes: false + previewoptions: + previewexcludeend: "0" + previewexcludestart: "0" + previewpreset: slow + previewsegmentduration: 0.75 + previewsegments: 18 + previews: false + sceneids: [] + sprites: false + transcodes: false + identify_task: + options: + fieldoptions: + - createmissing: null + field: title + strategy: OVERWRITE + - createmissing: true + field: studio + strategy: MERGE + - createmissing: true + field: performers + strategy: MERGE + - createmissing: true + field: tags + strategy: MERGE + includemaleperformers: true + setcoverimage: true + setorganized: false + skipmultiplematches: true + skipmultiplematchtag: "1159" + skipsinglenameperformers: true + skipsinglenameperformertag: "524" + paths: [] + sceneids: [] + sources: + - options: null + source: + scraperid: null + stashboxendpoint: https://stashdb.org/graphql + stashboxindex: null + - options: null + source: + scraperid: null + stashboxendpoint: https://metadataapi.net/graphql + stashboxindex: null + scan_task: + scangenerateclippreviews: false + scangeneratecovers: true + scangenerateimagepreviews: false + scangeneratephashes: true + scangeneratepreviews: true + scangeneratesprites: true + scangeneratethumbnails: true +dlna: + default_whitelist: + - 192.168.1.149 + video_sort_order: created_at +ffmpeg: + hardware_acceleration: true +gallery_cover_regex: (poster|cover|folder|board)\.[^\.]+$ +generated: "" +host: 0.0.0.0 +jwt_secret_key: 45dacba9bd122244b17a0365256a8e826f3c8e189cf21d26135b452824a9a037 +menu_items: + - scenes + - groups + - markers + - galleries + - performers + - studios + - tags +no_proxy: localhost,127.0.0.1,192.168.0.0/16,10.0.0.0/8,172.16.0.0/12 +nobrowser: true +notifications_enabled: false +parallel_tasks: 0 +password: $2a$04$T8nN490lPHZw1rf6v1Q2ze/VAn3hhgiJ6l/SSV96gBMwhmDLk/dXq +plugins: + disabled: + - VideoScrollWheel + - TPDBMarkers + package_sources: + - localpath: community + name: Community (stable) + url: https://stashapp.github.io/CommunityScripts/stable/index.yml + - localpath: stash-plugins + name: Stash-Plugins + url: https://7djx1qp.github.io/stash-plugins/main/index.yml + settings: + cjCardTweaks: + addBannerDimension: true + fileCount: true + performerProfileCards: true + stashStashIdInput: + performers: true + studios: true + tPdBmarkers: + disableSceneMarkerHook: true + timestampTrade: + createMovieFromScene: false + disableGalleryLookupHook: true + disableSceneMarkersHook: false + extraUrls: false + mergeMarkers: true +plugins_path: /plugins/ +port: 9999 +preview_audio: true +preview_exclude_end: 2% +preview_exclude_start: 5% +preview_preset: slow +preview_segment_duration: 1 +preview_segments: 30 +python_path: "" +scrapers: + package_sources: + - localpath: community + name: Community (stable) + url: https://stashapp.github.io/CommunityScrapers/stable/index.yml +scrapers_path: /scrapers/ +security_tripwire_accessed_from_public_internet: "" +sequential_scanning: false +session_store_key: 72b6a684a4d0f214e5abb049f0110e2df38c43b90fe6cd78ff646607d48a5dae +show_one_time_moved_notification: false +sound_on_preview: false +stash: + - excludeimage: true + excludevideo: false + path: /data/ + - excludeimage: true + excludevideo: false + path: /stash + - excludeimage: true + excludevideo: false + path: /junk + - excludeimage: true + excludevideo: false + path: /movies + - excludeimage: true + excludevideo: false + path: /packs +stash_boxes: + - apikey: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1aWQiOiI5ZDIxZTM2NS01N2QyLTRiZDUtODVkOC1kOGQwMjIxYTc2ZTMiLCJzdWIiOiJBUElLZXkiLCJpYXQiOjE2OTc5NjUyOTh9.Yk5agCaeidWqXyjsO29Lb6wnEglXHjSZdE94cDuLx2g + endpoint: https://stashdb.org/graphql + name: stashdb.org + - apikey: H04DEzLXkMqUBtNdS9CYOI4ek9KZb0EBSfNhTt1A87ee11b2 + endpoint: https://theporndb.net/graphql + name: ThePornDB +theme_color: '#202b33' +ui: + advancedMode: true + compactExpandedDetails: false + defaultFilters: + performers: + find_filter: + direction: ASC + page: "1" + per_page: "40" + q: "" + sort: name + mode: PERFORMERS + object_filter: + gender: + modifier: EQUALS + value: Female + ui_options: + display_mode: "0" + zoom_index: "1" + scenes: + find_filter: + direction: DESC + page: "1" + per_page: "20" + q: "" + sort: random_81535573 + mode: SCENES + object_filter: + path: + modifier: MATCHES_REGEX + value: ^/data/.*$|^/packs/.*$|^/movies/.*$ + phash_distance: + modifier: NOT_NULL + value: + distance: "0" + value: "" + play_duration: + modifier: LESS_THAN + value: + value: "4" + studios: + modifier: NOT_NULL + value: + depth: "0" + excluded: [] + items: [] + ui_options: + display_mode: "0" + zoom_index: "3" + enableChromecast: true + enableMovieBackgroundImage: true + enablePerformerBackgroundImage: true + enableStudioBackgroundImage: true + frontPageContent: + - __typename: CustomFilter + direction: DESC + message: + id: recently_released_objects + values: + objects: Scenes + mode: SCENES + sortBy: date + - __typename: CustomFilter + direction: DESC + message: + id: recently_added_objects + values: + objects: Studios + mode: STUDIOS + sortBy: created_at + - __typename: CustomFilter + direction: DESC + message: + id: recently_released_objects + values: + objects: Movies + mode: MOVIES + sortBy: date + - __typename: CustomFilter + direction: DESC + message: + id: recently_added_objects + values: + objects: Performers + mode: PERFORMERS + sortBy: created_at + - __typename: CustomFilter + direction: DESC + message: + id: recently_released_objects + values: + objects: Galleries + mode: GALLERIES + sortBy: date + lastNoteSeen: "20240826" + minimumPlayPercent: "10" + pinnedFilters: + performers: + - isMissing + scenes: + - path + - isMissing + - tags + ratingSystemOptions: + starPrecision: half + type: stars + taggerConfig: + blacklist: + - \sXXX\s + - 1080p + - 720p + - 2160p + - KTR + - RARBG + - \scom\s + - \[ + - \] + createParentStudios: true + excludedPerformerFields: + - name + excludedStudioFields: + - name + fingerprintQueue: + https://stashdb.org/graphql: + - "16926" + - "16932" + - "16937" + - "16916" + - "16922" + - "16931" + - "16914" + - "16924" + - "16930" + - "16920" + - "16909" + - "16927" + - "16936" + - "16911" + - "16921" + - "16925" + - "16912" + - "16918" + - "16923" + - "16933" + - "16913" + - "16928" + - "16929" + - "16910" + - "16915" + - "16943" + - "16935" + - "16919" + - "16861" + - "16945" + - "16946" + - "16949" + - "16955" + - "16956" + - "16957" + - "16958" + - "16959" + - "16962" + - "16967" + - "16970" + - "16971" + - "16977" + - "16978" + - "16989" + - "16991" + - "16988" + - "16994" + - "16995" + - "16986" + - "16996" + - "16993" + - "16984" + - "16987" + - "16992" + - "16985" + - "16998" + - "17000" + - "16999" + - "17002" + - "17007" + - "17011" + - "17008" + - "17010" + - "17009" + - "17012" + - "17013" + - "17014" + - "17016" + - "17015" + - "17017" + - "17018" + - "17019" + - "17022" + - "17020" + - "17021" + - "17023" + - "17024" + - "17027" + - "17025" + - "17028" + - "17029" + - "17030" + - "17032" + - "17035" + - "17034" + - "17036" + - "17037" + - "17038" + - "17043" + - "17045" + - "17044" + - "17047" + - "17048" + - "17053" + - "17059" + - "17060" + - "17061" + - "17063" + - "17062" + - "17065" + - "17066" + - "17067" + - "17068" + - "17069" + - "17071" + - "17072" + - "17074" + - "17073" + - "17075" + - "17076" + - "17077" + - "17078" + - "17079" + - "17082" + - "17083" + - "17085" + - "17088" + - "17090" + - "17092" + - "17093" + - "17094" + - "17095" + - "17096" + - "17099" + - "17105" + - "17141" + - "17140" + - "17160" + - "17135" + - "17159" + - "17157" + - "17175" + - "17177" + - "17176" + - "17146" + - "17164" + - "17152" + - "17179" + - "17172" + - "17145" + - "17158" + - "17153" + - "17163" + - "17156" + - "17148" + - "17138" + - "17142" + - "17137" + - "17167" + - "17171" + - "17173" + - "17154" + - "17168" + - "17166" + - "17139" + - "17151" + - "17169" + - "17162" + - "17161" + - "17178" + - "17144" + - "17136" + - "17147" + - "17180" + - "17181" + - "17182" + - "17185" + - "17186" + - "17188" + - "17192" + - "17193" + - "17194" + - "17195" + - "17196" + - "17197" + - "17198" + - "17199" + - "17200" + - "17201" + - "17202" + - "17205" + - "17209" + - "17208" + - "17210" + - "17211" + - "17212" + - "17214" + - "17213" + - "17215" + - "17217" + - "17218" + - "17220" + - "17216" + - "17219" + - "17222" + - "17221" + - "17223" + - "17224" + - "17230" + - "17226" + - "17233" + - "17232" + - "17229" + - "17231" + - "17227" + - "17225" + - "17228" + - "17234" + - "17235" + - "17236" + - "17237" + - "17238" + - "17239" + - "17241" + - "17240" + - "17243" + - "17242" + - "17245" + - "17244" + - "17246" + - "17248" + - "17247" + - "17249" + - "17250" + - "17251" + - "17252" + - "17254" + - "17253" + - "17255" + - "17256" + - "17257" + - "17258" + - "17261" + - "17259" + - "17260" + - "17265" + - "17266" + - "17267" + - "17268" + - "17269" + - "17271" + - "17270" + - "17272" + - "17277" + - "17278" + - "17312" + - "17313" + - "17315" + - "17314" + - "17316" + - "17318" + - "17317" + - "16890" + - "16891" + - "17320" + - "17321" + - "17322" + - "17323" + - "17324" + - "17325" + - "17326" + - "17327" + - "17328" + - "17329" + - "17330" + - "17331" + - "17332" + - "17336" + - "17339" + - "17338" + - "17340" + - "17342" + - "17345" + - "17348" + - "17349" + - "17351" + - "17341" + - "17367" + - "17368" + - "17376" + - "17377" + - "17378" + - "17379" + - "17382" + - "17381" + - "17383" + - "17385" + - "17386" + - "17384" + - "17389" + - "17388" + - "17390" + - "17392" + - "17399" + - "17406" + - "17405" + - "17407" + - "17409" + - "17424" + - "17426" + - "17425" + - "17427" + - "17429" + - "17430" + - "17431" + - "17432" + - "17435" + - "17434" + - "17437" + - "17438" + - "17439" + - "17441" + - "17442" + - "17444" + - "17443" + - "17445" + - "17447" + - "17446" + - "17449" + - "17448" + - "17451" + - "17453" + - "17454" + - "17455" + - "17456" + - "17440" + - "17459" + - "17458" + - "17460" + - "17462" + - "17463" + - "17464" + - "17465" + - "17466" + - "17468" + - "17469" + - "17470" + - "17503" + - "17505" + - "17506" + - "17507" + - "17510" + - "17512" + - "17514" + - "17513" + - "17515" + - "17516" + - "17517" + - "17520" + - "17521" + - "17522" + - "17508" + - "17502" + - "17509" + - "17524" + - "17527" + - "17529" + - "17530" + - "17531" + - "17532" + - "17533" + - "17534" + - "17535" + - "17536" + - "17537" + - "17538" + - "17539" + - "17540" + - "17541" + - "17542" + - "17543" + - "17544" + - "17545" + - "17546" + https://theporndb.net/graphql: + - "16934" + - "16908" + - "16944" + - "16917" + - "16947" + - "16948" + - "16979" + - "16990" + - "17026" + - "17031" + - "17033" + - "17081" + - "17080" + - "17084" + - "17087" + - "17086" + - "17089" + - "17091" + - "17143" + - "17183" + - "17150" + - "17149" + - "17155" + - "17165" + - "17184" + - "17319" + - "17347" + - "17352" + - "17369" + - "17370" + - "17371" + - "17387" + - "17391" + - "17380" + - "17436" + - "17457" + - "17461" + - "17501" + - "17504" + - "17511" + - "17519" + markSceneAsOrganizedOnSave: false + mode: auto + selectedEndpoint: https://theporndb.net/graphql + setCoverImage: true + setTags: true + showMales: true + tagOperation: merge + taskDefaults: + cleanGenerated: + blobFiles: true + dryRun: false + imageThumbnails: false + markers: true + screenshots: true + sprites: true + transcodes: true + generate: + clipPreviews: false + covers: true + imagePreviews: false + imageThumbnails: false + interactiveHeatmapsSpeeds: false + markerImagePreviews: false + markerScreenshots: false + markers: false + phashes: true + previewOptions: + previewExcludeEnd: "0" + previewExcludeStart: "0" + previewPreset: slow + previewSegmentDuration: "0.75" + previewSegments: "18" + previews: true + sprites: true + transcodes: false + trackActivity: true +username: chris +video_file_naming_algorithm: OSHASH +write_image_thumbnails: true diff --git a/stashapp/config/custom.css b/stashapp/config/custom.css new file mode 100755 index 0000000..e69de29 diff --git a/stashapp/docker-compose.yml b/stashapp/docker-compose.yml new file mode 100644 index 0000000..ec27a6d --- /dev/null +++ b/stashapp/docker-compose.yml @@ -0,0 +1,51 @@ +# APPNICENAME=Stash +# APPDESCRIPTION=An organizer for your porn, written in Go +services: + stash: + image: stashapp/stash:latest + container_name: stash + restart: unless-stopped + ## the container's port must be the same with the STASH_PORT in the environment section + ports: + - "9999:9999" + ## If you intend to use stash's DLNA functionality uncomment the below network mode and comment out the above ports section + # network_mode: host + logging: + driver: "json-file" + options: + max-file: "10" + max-size: "2m" + environment: + - STASH_STASH=/data/ + - STASH_GENERATED=/generated/ + - STASH_METADATA=/metadata/ + - STASH_CACHE=/cache/ + ## Adjust below to change default port (9999) + - STASH_PORT=9999 + volumes: + - /etc/localtime:/etc/localtime:ro + ## Adjust below paths (the left part) to your liking. + ## E.g. you can change ./config:/root/.stash to ./stash:/root/.stash + + ## Keep configs, scrapers, and plugins here. + - ./config:/root/.stash + ## Point this at your collection. + - /media/raid/junk_transfer:/data + - /media/raid/stash:/stash + - /media/junk/junk:/junk + - /media/raid/junk_movies_transfer:/movies + - /media/raid/junk_pack_transfer:/packs + ## This is where your stash's metadata lives + - ./data/metadata:/metadata + ## Any other cache content. + - ./data/cache:/cache + ## Where to store binary blob data (scene covers, images) + - ./data/blobs:/blobs + ## Where to store plugins + - ./data/plugins:/plugins + ## Where to store scrapers + - ./data/scrapers:/scrapers + ## Where to store database file + - ./data/db:/db + ## Where to store generated content (screenshots,previews,transcodes,sprites) + - /media/stashapp/generated:/generated