default.yaml 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174
  1. # /!\ YOU SHOULD NOT UPDATE THIS FILE, USE production.yaml instead /!\ #
  2. listen:
  3. hostname: '127.0.0.1'
  4. port: 9000
  5. webserver:
  6. https: false
  7. hostname: 'localhost'
  8. port: 9000
  9. # Proxies to trust to get real client IP
  10. # If you run PeerTube just behind a local proxy (nginx), keep 'loopback'
  11. # If you run PeerTube behind a remote proxy, add the proxy IP address (or subnet)
  12. trust_proxy:
  13. - 'loopback'
  14. # Your database name will be "peertube"+database.suffix
  15. database:
  16. hostname: 'localhost'
  17. port: 5432
  18. suffix: '_dev'
  19. username: 'peertube'
  20. password: 'peertube'
  21. pool:
  22. max: 5
  23. # You can also specify a 'socket' path to a unix socket but first need to
  24. # comment out hostname and port
  25. redis:
  26. hostname: 'localhost'
  27. port: 6379
  28. auth: null
  29. db: 0
  30. smtp:
  31. hostname: null
  32. port: 465
  33. username: null
  34. password: null
  35. tls: true
  36. disable_starttls: false
  37. ca_file: null # Used for self signed certificates
  38. from_address: 'admin@example.com'
  39. # From the project root directory
  40. storage:
  41. tmp: 'storage/tmp/' # Used to download data (imports etc), store uploaded files before processing...
  42. avatars: 'storage/avatars/'
  43. videos: 'storage/videos/'
  44. redundancy: 'storage/redundancy/'
  45. logs: 'storage/logs/'
  46. previews: 'storage/previews/'
  47. thumbnails: 'storage/thumbnails/'
  48. torrents: 'storage/torrents/'
  49. captions: 'storage/captions/'
  50. cache: 'storage/cache/'
  51. log:
  52. level: 'info' # debug/info/warning/error
  53. search:
  54. # Add ability to fetch remote videos/actors by their URI, that may not be federated with your instance
  55. # If enabled, the associated group will be able to "escape" from the instance follows
  56. # That means they will be able to follow channels, watch videos, list videos of non followed instances
  57. remote_uri:
  58. users: true
  59. anonymous: false
  60. trending:
  61. videos:
  62. interval_days: 7 # Compute trending videos for the last x days
  63. # Cache remote videos on your server, to help other instances to broadcast the video
  64. # You can define multiple caches using different sizes/strategies
  65. # Once you have defined your strategies, choose which instances you want to cache in admin -> manage follows -> following
  66. redundancy:
  67. videos:
  68. check_interval: '1 hour' # How often you want to check new videos to cache
  69. strategies: # Just uncomment strategies you want
  70. # -
  71. # size: '10GB'
  72. # # Minimum time the video must remain in the cache. Only accept values > 10 hours (to not overload remote instances)
  73. # min_lifetime: '48 hours'
  74. # strategy: 'most-views' # Cache videos that have the most views
  75. # -
  76. # size: '10GB'
  77. # # Minimum time the video must remain in the cache. Only accept values > 10 hours (to not overload remote instances)
  78. # min_lifetime: '48 hours'
  79. # strategy: 'trending' # Cache trending videos
  80. # -
  81. # size: '10GB'
  82. # # Minimum time the video must remain in the cache. Only accept values > 10 hours (to not overload remote instances)
  83. # min_lifetime: '48 hours'
  84. # strategy: 'recently-added' # Cache recently added videos
  85. # min_views: 10 # Having at least x views
  86. cache:
  87. previews:
  88. size: 500 # Max number of previews you want to cache
  89. captions:
  90. size: 500 # Max number of video captions/subtitles you want to cache
  91. admin:
  92. email: 'admin@example.com' # Your personal email as administrator
  93. signup:
  94. enabled: false
  95. limit: 10 # When the limit is reached, registrations are disabled. -1 == unlimited
  96. requires_email_verification: false
  97. filters:
  98. cidr: # You can specify CIDR ranges to whitelist (empty = no filtering) or blacklist
  99. whitelist: []
  100. blacklist: []
  101. user:
  102. # Default value of maximum video BYTES the user can upload (does not take into account transcoded files).
  103. # -1 == unlimited
  104. video_quota: -1
  105. video_quota_daily: -1
  106. # If enabled, the video will be transcoded to mp4 (x264) with "faststart" flag
  107. # In addition, if some resolutions are enabled the mp4 video file will be transcoded to these new resolutions.
  108. # Please, do not disable transcoding since many uploaded videos will not work
  109. transcoding:
  110. enabled: true
  111. # Allow your users to upload .mkv, .mov, .avi, .flv videos
  112. allow_additional_extensions: true
  113. threads: 1
  114. resolutions: # Only created if the original video has a higher resolution, uses more storage!
  115. 240p: false
  116. 360p: false
  117. 480p: false
  118. 720p: false
  119. 1080p: false
  120. import:
  121. # Add ability for your users to import remote videos (from YouTube, torrent...)
  122. videos:
  123. http: # Classic HTTP or all sites supported by youtube-dl https://rg3.github.io/youtube-dl/supportedsites.html
  124. enabled: false
  125. torrent: # Magnet URI or torrent file (use classic TCP/UDP/WebSeed to download the file)
  126. enabled: false
  127. instance:
  128. name: 'PeerTube'
  129. short_description: 'PeerTube, a federated (ActivityPub) video streaming platform using P2P (BitTorrent) directly in the web browser with WebTorrent and Angular.'
  130. description: 'Welcome to this PeerTube instance!' # Support markdown
  131. terms: 'No terms for now.' # Support markdown
  132. default_client_route: '/videos/trending'
  133. # By default, "do_not_list" or "blur" or "display" NSFW videos
  134. # Could be overridden per user with a setting
  135. default_nsfw_policy: 'do_not_list'
  136. customizations:
  137. javascript: '' # Directly your JavaScript code (without <script> tags). Will be eval at runtime
  138. css: '' # Directly your CSS code (without <style> tags). Will be injected at runtime
  139. # Robot.txt rules. To disallow robots to crawl your instance and disallow indexation of your site, add '/' to "Disallow:'
  140. robots: |
  141. User-agent: *
  142. Disallow:
  143. # Security.txt rules. To discourage researchers from testing your instance and disable security.txt integration, set this to an empty string.
  144. securitytxt:
  145. "# If you would like to report a security issue\n# you may report it to:\nContact: https://github.com/Chocobozzz/PeerTube/blob/develop/SECURITY.md\nContact: mailto:"
  146. services:
  147. # You can provide a reporting endpoint for Content Security Policy violations
  148. csp-logger:
  149. # Cards configuration to format video in Twitter
  150. twitter:
  151. username: '@Chocobozzz' # Indicates the Twitter account for the website or platform on which the content was published
  152. # If true, a video player will be embedded in the Twitter feed on PeerTube video share
  153. # If false, we use an image link card that will redirect on your PeerTube instance
  154. # Change it to "true", and then test on https://cards-dev.twitter.com/validator to see if you are whitelisted
  155. whitelisted: false