「大家好,我是熊貓,你的NAS領(lǐng)航員。NAS不只是存儲那么簡單,數(shù)碼也可以是生活,關(guān)注我,給你的生活加點'技'趣!」
引言
熊貓寫過很多個人主頁、導(dǎo)航、筆記、短鏈以及文件分享的項目了,但今天這個很有趣,它將我剛剛說到的所有功能集成起來了,實現(xiàn)了個人信息與橫幅展示、導(dǎo)航頁外鏈展示與跳轉(zhuǎn)、支持賬號密碼登錄、支持云筆記以及短鏈服務(wù)和文件存儲、分享以及直鏈下載和鑒權(quán)。同時它所有的頁面都是可編輯的,今天要介紹的便是這樣一個集成項目——「UniBoard」。
UniBoard
部署
項目涉及到服務(wù)的前后端部署、postgres部署以及redis部署,所以作者很貼心的為我們提供了「docker-compose.yml文件」,只需要更改其中的內(nèi)容就可以了。這里貼上作者給到的代碼:
version: '3'
services:
frontend:
image: dockerpull.com/coolfan1024/uniboard:0.2.2
container_name: uniboard-frontend
ports:
- '8888:80'
env_file:
- .env
volumes:
- ./service/media:/usr/share/nginx/media
depends_on:
- backend
backend:
image: dockerpull.com/coolfan1024/uniboard-service:0.2.2
container_name: uniboard-backend
volumes:
- ./service/media:/app/media
- ./service/migrations:/app/api/migrations
env_file:
- .env
depends_on:
postgres:
condition: service_healthy
redis:
condition: service_healthy
postgres:
image: dockerpull.com/postgres:16.3-bookworm
container_name: uniboard-postgres
environment:
POSTGRES_DB: uniboard
POSTGRES_PASSWORD: XFdWwID02qJxerertfTrYFiok7G1bg
env_file:
- .env
volumes:
- ./database/postgres_data:/var/lib/postgresql/data
healthcheck:
test: ['CMD-SHELL', 'pg_isready -U postgres']
interval: 10s
timeout: 10s
retries: 10
redis:
image: dockerpull.com/redis:7.4.0-bookworm
container_name: uniboard-redis
command: ['redis-server', '--requirepass', 'GdlkOVEmA3vp8JA6ZoAiqIPxSwZR5']
env_file:
- .env
volumes:
- ./database/redis_data:/data
healthcheck:
test: ['CMD', 'redis-cli', 'ping']
interval: 3s
timeout: 3s
retries: 10
同時除了docker-compose.yml文件,我們還需要準備好配置文件,可以在nas中新建記事本,將其中內(nèi)容改為以下內(nèi)容之后再將記事本重命名為.env
。
# 用于登陸的超級用戶用戶名
DJANGO_SUPERUSER_USERNAME = admin
# 用于登陸的超級用戶密碼
DJANGO_SUPERUSER_PASSWORD = passWord
# 此郵箱僅用于創(chuàng)建超級用戶,不會被使用
DJANGO_SUPERUSER_EMAIL = admin@uniboard.com
以上的「docker-compose.yml以及.env文件」中的內(nèi)容都要記得更改為自己的信息,更改完成之后根據(jù)docker-compose.yml的文件內(nèi)容,我們創(chuàng)建好對應(yīng)的文件夾,最后的目錄樹應(yīng)該為如圖所示。
目錄樹
在所有工作做好之后,我們打開NAS的ssh端口,連接上nas之后通過cd命令移動到docker-compose.yml根目錄,執(zhí)行命令:docker-compose up -d
。
執(zhí)行命令
最后看到四個鏡像都成功啟動則代表項目已經(jīng)部署成功了。
體驗
瀏覽器輸入http:nasip:8888便可以看到項目的個人主頁界面了,這里熊貓已經(jīng)改成了自己的信息,如果是初始設(shè)置那么會顯示作者的一些預(yù)設(shè)信息。
個人主頁
點擊名字右邊就會彈出登錄窗口,輸入我們配置文件中設(shè)置的賬號密碼便能登錄后臺了,默認情況下后臺很簡潔,頂部為精確到秒的時鐘,下方從左到右分別是筆記、短鏈接、文件、設(shè)置以及退出。
后臺
首先是云筆記功能,筆記采用的為markdown編輯器,對于語法的擴展性兼容還不錯,支持表格、分割線、超鏈接等等,作為一個臨時用于記錄的地方夠用了。
云筆記功能
短鏈服務(wù)也非常好用,將你需要轉(zhuǎn)的短鏈復(fù)制到紅框中,隨后點擊后面的+號就能生成短鏈了,再點擊下方的復(fù)制就可以復(fù)制短鏈訪問,這里需要注意的是,短鏈功能僅支持https協(xié)議,也就是說你必須反代該項目才能使用短鏈功能。
短鏈服務(wù)
文件功能中,目前支持私有、完全公開以及密碼保護三種權(quán)限,同時支持添加分享的文件名以及文件描述。
文件功能
創(chuàng)建好文件之后可以看到文件記錄,這里也會統(tǒng)計下載次數(shù),重新編輯鏈接的界面也能復(fù)制臨時5分鐘使用的直鏈。
編輯文件鏈接
點擊權(quán)限旁邊的鏈接富豪就能復(fù)制分享鏈接,分享界面和主界面一致,會顯示發(fā)送人、文件名以及文件描述,如果有密碼那么在下載的邊上會要求你輸入密碼。
文件分享
最后則是設(shè)置頁,這里支持設(shè)置個人主頁的頭像、橫幅、展示姓名、個人簡介、標語以及各個媒體平臺的信息(記得關(guān)注熊貓微博哦?。?/p>
設(shè)置界面
在設(shè)置的最下面支持設(shè)置用于第二屏展示的超鏈接,針對網(wǎng)址可進行標題設(shè)置、描述設(shè)置以及主題色的設(shè)置,同時也支持從網(wǎng)址直接獲取網(wǎng)址圖標。
第二屏
第二屏會在個人主頁的下方顯示,鼠標移動過去還會有動態(tài)效果。
導(dǎo)航頁
總結(jié)
很精致的項目,同時集成了各種實用的功能,作者在準備做一個優(yōu)雅精簡的探針服務(wù),項目公開于三四個月前,不過整體完成度已經(jīng)非常高了,個人還是蠻喜歡這種風格的UI設(shè)計。
以上便是本期的全部內(nèi)容了,如果你覺得還算有趣或者對你有所幫助,不妨點贊收藏,最后也希望能得到你的關(guān)注,咱們下期見!
三連
作者聲明本文無利益相關(guān),歡迎值友理性交流,和諧討論~
,