真哥們就要一起看片,NAS部署自托管視頻共享平臺(tái)Clipable
?「怕錯(cuò)過(guò)熊貓的精彩分享?那就趕快關(guān)注下熊貓吧!」
添加微信westlife-995即可加入熊貓的討論群哦!
?
前言
俗話說(shuō)得好,真哥們就要一起扛過(guò)那啥,一打打過(guò)那啥,一起看過(guò)那啥,所以今天給大家介紹的便是一款可以一起看片的視頻共享平臺(tái)——Clipable。Clipable提供了一個(gè)簡(jiǎn)單直觀的用戶界面,讓任何人都可以輕松上傳、分享和觀看視頻。所以你可以將你的視頻上傳,而其他人也可以對(duì)視頻進(jìn)行觀看或分享。
部署
官方的鏡像發(fā)布在ghcr.io,并且提供了拉取命令。所以我們打開(kāi)群暉的SSH端口后用SSH工具連接到NAS后獲取管理員命令,再輸入官方給出的命令就可以拉取鏡像了,如果拉取緩慢可以考慮加個(gè)代理加速。

下載完成之后我們就可以在群暉的docker中找到鏡像,但此時(shí)我們還缺少一些其他組件,例如運(yùn)行的數(shù)據(jù)庫(kù)等容器。所以跟著我的步驟咱們繼續(xù)。

為了方便數(shù)據(jù)庫(kù)與存儲(chǔ)的安裝,這里我們用到docker-compose的方式進(jìn)行安裝,一次性將所有的所需容器編排好之后安裝。所以我們需要新建一個(gè)docker-compose.yml文件,內(nèi)容如下:
version: '2.1'
services:
? postgres:
? ? image: postgres:14
? ? container_name: clipable-db
? ? environment:
? ? ? - POSTGRES_HOST_AUTH_METHOD=trust
? ? volumes:
? ? ? - ./pg_data:/var/lib/postgresql/data
? ? healthcheck:
? ? ? test: ["CMD-SHELL", "pg_isready -U postgres"]
? ? ? interval: 1s
? ? ? timeout: 5s
? ? ? retries: 5
? minio:
? ? image: minio/minio
? ? container_name: clipable-minio
? ? volumes:
? ? ? - ./minio_data:/data
? ? # ports:
? ? #? ?- 9001:9001
? ? environment:
? ? #? - "MINIO_ACCESS_KEY=minio"
? ? #? - "MINIO_SECRET_KEY=myminiokeythatishouldchange123"
? ? ? - MINIO_ROOT_USER=minio
? ? ? - MINIO_ROOT_PASSWORD=myminiokeythatishouldchange123
? ? command: server /data --console-address ":9001"
? createbuckets:
? ? image: minio/mc
? ? container_name: clipable-mc
? ? depends_on:
? ? ? - minio
? ? entrypoint: >
? ? ? /bin/sh -c "
? ? ? /usr/bin/mc alias set clipable http://minio:9000 minio myminiokeythatishouldchange123;
? ? ? /usr/bin/mc mb clipable/clips;
? ? ? exit 0;
? ? ? "
? clipable:
? ? image: ghcr.io/clipable/clipable:latest
? ? container_name: clipable-web
? ? # All of these environment variables are documented here: https://github.com/clipable/clipable/wiki/Environment-Variables
? ? environment:
? ? ? #DEBUG: "true"
? ? ? MAX_UPLOAD_SIZE: 5GB
? ? ? ALLOW_REGISTRATION: "true"
? ? ? FFMPEG_CONCURRENCY: 1?
? ? ? FFMPEG_THREADS: 0
? ? ? FFMPEG_PRESET: medium
? ? ? FFMPEG_TUNE: film
? ? ? DB_HOST: postgres
? ? ? DB_PORT: 5432
? ? ? DB_USER: postgres
? ? ? DB_PASSWORD: postgres
? ? ? DB_NAME: postgres
? ? ? DB_IDHASHKEY: mydbidkeythatishouldchange123
? ? ? COOKIE_KEY: mycookiekey12345
? ? ? COOKIE_DOMAIN: panda995.top
? ? ? S3_BUCKET: clips
? ? ? S3_ACCESS: minio
? ? ? S3_SECRET: myminiokeythatishouldchange123
? ? ? S3_ADDRESS: minio:9000
? ? ? S3_SECURE: "false"
? ? ports:
? ? ? - 8190:80
? ? depends_on:
? ? ? postgres:
? ? ? ? condition: service_healthy
其中COOKIE_DOMAIN為你的群暉IP,如果需要使用域名,那么只需要改為域名即可,這里需要注意的便是這個(gè)是不需要加端口的。其他的則是數(shù)據(jù)庫(kù)的用戶與密碼等等,可以使自己情況決定是否更改。

隨后我們還需要在docker文件夾中新建clipable文件夾,并在其中新建子文件夾minio_data與pg_data用于存放數(shù)據(jù)。

準(zhǔn)備好一切之后將yml文件放入項(xiàng)目根目錄,SSH工具移動(dòng)到項(xiàng)目目錄后執(zhí)行docker-compose up -d命令就可以了。

這里一共會(huì)啟動(dòng)四個(gè)容器,但其中一個(gè)在執(zhí)行完它的使命后便會(huì)停止,我們不用管他。

體驗(yàn)
瀏覽器輸入域名加上端口號(hào)就可以看到登錄界面了,首先注冊(cè)一個(gè)賬號(hào)。

注冊(cè)之后便可以通過(guò)右上角上傳視頻了,該項(xiàng)目沒(méi)有中文,但是詞匯量很少,所以使用起來(lái)并沒(méi)有什么壓力。

視頻在上傳時(shí)會(huì)有一個(gè)轉(zhuǎn)碼的過(guò)程,根據(jù)視頻大小等待時(shí)間也不等,轉(zhuǎn)碼成功之后便可以播放了。

總結(jié)
部署之后有什么好康的視頻就可以直接通過(guò)這樣的平臺(tái)上傳,這樣再發(fā)給你的好哥們,大家都能雨露均沾了,而不是一個(gè)一個(gè)發(fā)送。同時(shí)你的好哥們有什么好康的也可以直接上傳,這樣你也能看到了。當(dāng)然大家有好康的一定也要記得熊貓哦!
以上便是本期的全部?jī)?nèi)容了,如果你覺(jué)得還算有趣或者對(duì)你有所幫助,不妨點(diǎn)贊收藏,最后也希望能得到你的關(guān)注,咱們下期見(jiàn)!
