X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=config%2Fdefault.yaml;h=3865ab5cf19720e5f8016bebbf36837964ce1f78;hb=188aa7740c603fe333cb2fa15494605d1f16a168;hp=283e0ab936225504120e698e0b7f3b61b065db99;hpb=1896bca09e088b0da9d5e845407ecebae330618c;p=github%2FChocobozzz%2FPeerTube.git diff --git a/config/default.yaml b/config/default.yaml index 283e0ab93..3865ab5cf 100644 --- a/config/default.yaml +++ b/config/default.yaml @@ -14,7 +14,7 @@ rates_limit: api: # 50 attempts in 10 seconds window: 10 seconds - max: 100 + max: 50 login: # 15 attempts in 5 min window: 5 minutes @@ -45,6 +45,7 @@ database: pool: max: 5 +# Redis server for short time storage # You can also specify a 'socket' path to a unix socket but first need to # comment out hostname and port redis: @@ -53,16 +54,17 @@ redis: auth: null db: 0 +# SMTP server to send emails smtp: # smtp or sendmail transport: smtp # Path to sendmail command. Required if you use sendmail transport sendmail: null hostname: null - port: 465 + port: 465 # If you use StartTLS: 587 username: null password: null - tls: true + tls: true # If you use StartTLS: false disable_starttls: false ca_file: null # Used for self signed certificates from_address: 'admin@example.com' @@ -75,7 +77,7 @@ email: # From the project root directory storage: - tmp: 'storage/tmp/' # Use to download data (imports etc), store uploaded files before processing... + tmp: 'storage/tmp/' # Use to download data (imports etc), store uploaded files before and during processing... avatars: 'storage/avatars/' videos: 'storage/videos/' streaming_playlists: 'storage/streaming-playlists/' @@ -93,10 +95,43 @@ storage: # If not, peertube will fallback to the default fil client_overrides: 'storage/client-overrides/' +object_storage: + enabled: false + + # Without protocol, will default to HTTPS + endpoint: '' # 's3.amazonaws.com' or 's3.fr-par.scw.cloud' for example + + region: 'us-east-1' + + credentials: + # You can also use AWS_ACCESS_KEY_ID env variable + access_key_id: '' + # You can also use AWS_SECRET_ACCESS_KEY env variable + secret_access_key: '' + + # Maximum amount to upload in one request to object storage + max_upload_part: 2GB + + streaming_playlists: + bucket_name: 'streaming-playlists' + + # Allows setting all buckets to the same value but with a different prefix + prefix: '' # Example: 'streaming-playlists:' + + # Base url for object URL generation, scheme and host will be replaced by this URL + # Useful when you want to use a CDN/external proxy + base_url: '' # Example: 'https://mirror.example.com' + + # Same settings but for webtorrent videos + videos: + bucket_name: 'videos' + prefix: '' + base_url: '' + log: - level: 'info' # debug/info/warning/error + level: 'info' # 'debug' | 'info' | 'warn' | 'error' rotation: - enabled : true + enabled : true # Enabled by default, if disabled make sure that 'storage.logs' is pointing to a folder handled by logrotate maxFileSize: 12MB maxFiles: 20 anonymizeIP: false @@ -108,7 +143,8 @@ trending: interval_days: 7 # Compute trending videos for the last x days algorithms: enabled: - - 'hot' # adaptation of the Reddit 'Hot' algorithm + - 'best' # adaptation of Reddit's 'Best' algorithm (Hot minus History) + - 'hot' # adaptation of Reddit's 'Hot' algorithm - 'most-viewed' # default, used initially by PeerTube as the trending page - 'most-liked' default: 'most-viewed' @@ -150,6 +186,11 @@ csp: report_only: true # CSP directives are still being tested, so disable the report only mode at your own risk! report_uri: +security: + # Set the X-Frame-Options header to help to mitigate clickjacking attacks + frameguard: + enabled: true + tracker: # If you disable the tracker, you disable the P2P aspect of PeerTube enabled: true @@ -189,11 +230,26 @@ federation: videos: federate_unlisted: false + # Add a weekly job that cleans up remote AP interactions on local videos (shares, rates and comments) + # It removes objects that do not exist anymore, and potentially fix their URLs + # This setting is opt-in because due to an old bug in PeerTube, remote rates sent by instance before PeerTube 3.0 will be deleted + # We still suggest you to enable this setting even if your users will loose most of their video's likes/dislikes + cleanup_remote_interactions: false + +peertube: + check_latest_version: + # Check and notify admins of new PeerTube versions + enabled: true + # You can use a custom URL if your want, that respect the format behind https://joinpeertube.org/api/v1/versions.json + url: 'https://joinpeertube.org/api/v1/versions.json' + cache: previews: size: 500 # Max number of previews you want to cache captions: size: 500 # Max number of video captions/subtitles you want to cache + torrents: + size: 500 # Max number of video torrents you want to cache admin: # Used to generate the root user at first startup @@ -206,6 +262,7 @@ contact_form: signup: enabled: false limit: 10 # When the limit is reached, registrations are disabled. -1 == unlimited + minimum_age: 16 # Used to configure the signup form requires_email_verification: false filters: cidr: # You can specify CIDR ranges to whitelist (empty = no filtering) or blacklist @@ -230,7 +287,10 @@ transcoding: # If a user uploads an audio file, PeerTube will create a video by merging the preview file and the audio file allow_audio_files: true + # Amount of threads used by ffmpeg for 1 transcoding job threads: 1 + # Amount of transcoding jobs to execute in parallel + concurrency: 1 # Choose the transcoding profile # New profiles can be added by plugins @@ -251,7 +311,7 @@ transcoding: # If you also enabled the hls format, it will multiply videos storage by 2 # If disabled, breaks federation with PeerTube instances < 2.1 webtorrent: - enabled: true + enabled: false # /!\ Requires ffmpeg >= 4.1 # Generate HLS playlists and fragmented MP4 files. Better playback than with WebTorrent: @@ -260,7 +320,7 @@ transcoding: # * More stable playback (less bugs/infinite loading) # If you also enabled the webtorrent format, it will multiply videos storage by 2 hls: - enabled: false + enabled: true live: enabled: false @@ -281,7 +341,7 @@ live: # PeerTube will transcode segments in a video file # If the user daily/total quota is reached, PeerTube will stop the live # /!\ transcoding.enabled (and not live.transcoding.enabled) has to be true to create a replay - allow_replay: false + allow_replay: true # Your firewall should accept traffic from this port in TCP if you enable live rtmp: @@ -309,6 +369,9 @@ live: import: # Add ability for your users to import remote videos (from YouTube, torrent...) videos: + # Amount of import jobs to execute in parallel + concurrency: 1 + http: # Classic HTTP or all sites supported by youtube-dl https://rg3.github.io/youtube-dl/supportedsites.html enabled: false @@ -328,6 +391,7 @@ auto_blacklist: of_users: enabled: false +# Instance settings instance: name: 'PeerTube' short_description: 'PeerTube, an ActivityPub-federated video streaming platform using P2P directly in your web browser.' @@ -425,7 +489,6 @@ followers: followings: instance: # If you want to automatically follow back new instance followers - # Only follows accepted followers (in case you enabled manual followers approbation) # If this option is enabled, use the mute feature instead of deleting followings # /!\ Don't enable this if you don't have a reactive moderation team /!\ auto_follow_back: