Using Azure Storage Blob for Object Storage

Hello, i am trying to configure Azure Storage Blob and use object storage on my docker peertube instance.

This is my production.yaml

Listen:
hostname: ‹ 0.0.0.0 ›
port: 9055

Correspond to your reverse proxy server_name/listen configuration (i.e., your public PeerTube instance URL)

webserver:
https: true
hostname: hostdotcom
port: 80

rates_limit:
login:
# 15 attempts in 5 min
window: 5 minutes
max: 15
ask_send_email:
# 3 attempts in 5 min
window: 5 minutes
max: 3

Proxies to trust to get real client IP

If you run PeerTube just behind a local proxy (nginx), keep ‹ loopback ›

If you run PeerTube behind a remote proxy, add the proxy IP address (or subnet)

trust_proxy:

  • ‹ loopback ›
  • ‹ linklocal ›
  • ‹ uniquelocal ›

Your database name will be database.name OR ‹ peertube ›+database.suffix

database:
hostname: ‹ postgres ›
port: 5432
ssl: false
suffix: ‹  ›
username: ‹ postgres ›
password: ‹ postgres ›

Redis server for short time storage

redis:
hostname: ‹ redis ›
port: 6379
auth: null

From the project root directory

storage:
tmp: ‹ …/data/tmp/ › # Use to download data (imports etc), store uploaded files before and during processing…
tmp_persistent: ‹ …/data/tmp-persistent/ › # As tmp but the directory is not cleaned up between PeerTube restarts
bin: ‹ …/data/bin/ ›
avatars: ‹ …/data/avatars/ ›
web_videos: ‹ …/data/web-videos/ ›
streaming_playlists: ‹ …/data/streaming-playlists ›
redundancy: ‹ …/data/redundancy/ ›
logs: ‹ …/data/logs/ ›
previews: ‹ …/data/previews/ ›
thumbnails: ‹ …/data/thumbnails/ ›
storyboards: ‹ …/data/storyboards/ ›
torrents: ‹ …/data/torrents/ ›
captions: ‹ …/data/captions/ ›
cache: ‹ …/data/cache/ ›
plugins: ‹ …/data/plugins/ ›
well_known: ‹ …/data/well-known/ ›

Overridable client files in client/dist/assets/images :

- logo.svg

- favicon.png

- default-playlist.jpg

- default-avatar-account.png

- default-avatar-video-channel.png

- and icons/*.png (PWA)

Could contain for example assets/images/favicon.png

If the file exists, peertube will serve it

If not, peertube will fallback to the default fil

client_overrides: ‹ …/data/client-overrides/ ›

object_storage:
upload_acl:
public: null # Set to null here because we can’t use env variables
private: null
streaming_playlists:
storage: ‹ s3 ›
s3:
endpoint: ‹ https://peertube.blob[dot]core.windows[dot]net ›
bucket: ‹ peertube-videos ›
region: ‹ default › # This is required but doesn’t affect Azure
access_key_id: ‹ peertube ›
secret_access_key: ‹ supersecret== ›
videos:
storage: ‹ s3 ›
s3:
endpoint: ‹ peertube.blob[dot]core.windows[dot]net ›
bucket: ‹ peertube-videos ›
region: ‹ default › # This is required but doesn’t affect Azure
access_key_id: ‹ peertube ›
secret_access_key: ‹ supersecret’== ›

log:
level: ‹ info › # ‹ debug › | ‹ info › | ‹ warn › | ‹ error ›

tracker:
enabled: true
reject_too_many_announces: false # false because we have issues with docker ws ip/port forwarding

admin: