最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用?Docker?搭建適用于?HomeLab?的書簽導(dǎo)航應(yīng)用

 更新時(shí)間:2022年02月09日 15:07:50   作者:蘇洋  
在使用新私有化部署的書簽導(dǎo)航應(yīng)用一個(gè)月之后,我們來聊聊書簽導(dǎo)航工具,以及介紹如何使用?Docker?在幾分鐘之內(nèi)部署屬于你自己的書簽導(dǎo)航應(yīng)用

寫在前面

我目前使用的書簽導(dǎo)航工具的界面是這樣的(馬賽克掉了一部分鏈接內(nèi)容):

作為一個(gè)使用了十多年 Chrome 的用戶,Chrome 書簽管理器一直是我的主要的書簽管理工具。在漫長(zhǎng)的歲月里,我的 Chrome 書簽管理器中,最多的時(shí)候存放了上千個(gè)書簽鏈接。

但是 Chrome 的書簽欄面積十分有限,隨著折騰的東西越來越多,導(dǎo)致導(dǎo)航欄基本放不了多少東西,許多書簽常常需要在書簽二級(jí)目錄甚至三級(jí)目錄中查找,非常麻煩。當(dāng)然,Chrome 地址欄和搜索欄二合一之后,瀏覽器支持從這個(gè)全能文本框中搜索某個(gè)書簽以及歷史搜索結(jié)果,但是在缺少提示的情況下,也時(shí)常出現(xiàn) “茫茫人海,不知從何搜起”的狀況,或者出現(xiàn)搜索結(jié)果中的書簽會(huì)混雜在一堆歷史瀏覽記錄中的狀況。

幾個(gè)月前,我開始進(jìn)行個(gè)人 PKM 重建。在過程中,我期待有更好的方式來使用書簽,讓我能夠更多的使用“一次點(diǎn)擊”來解決問題,減少大量翻箱倒柜式的“翻找”和“搜索”動(dòng)作;同時(shí),我也希望這些書簽內(nèi)容,可以在不同的瀏覽器和設(shè)備中共享,而不是僅限在 Chrome、Safari 或某個(gè)特定的產(chǎn)品中使用、甚至僅限在桌面瀏覽器環(huán)境中使用;我希望盡可能不使用在線的云服務(wù),因?yàn)樵谶^去的十年中,非常多的以云收藏夾為主營(yíng)業(yè)務(wù)的公司都折戟在了互聯(lián)網(wǎng)長(zhǎng)河中;最后,我希望這些數(shù)據(jù)是能夠使用比較友好的格式被妥善的存儲(chǔ),在未來某個(gè)時(shí)刻能夠很方便的遷移到更先進(jìn)的工具中。

基于上面的種種考慮,我在一眾開源軟件中找到了 Flame,在使用了一段時(shí)間后,我覺得 Flame 中的一些設(shè)計(jì)對(duì)于我而言比較多余,以及軟件本身的性能效率并不是特別好,尤其是針對(duì)我這種擁有非常多書簽的用戶而言。所以,在借鑒 Flame 原有功能的基礎(chǔ)上,我寫了一套新的工具 Flare。關(guān)于 Flare 的制作和性能調(diào)優(yōu),感興趣的同學(xué)可以圍觀之前的文章 《Flare 制作記錄:應(yīng)用前后端性能優(yōu)化》 。

雖然我制作了“改良版” Flare,但是 Flame 對(duì)于多數(shù)人而言,依舊是一款不錯(cuò)的軟件。所以,接下來我會(huì)分別聊聊兩款軟件在容器下的使用,供我的讀者按需選擇。?

在容器中使用 Flame

相比較其他的要么功能紛繁復(fù)雜,要么界面陳舊落后的開源軟件,功能相對(duì)簡(jiǎn)單,界面顏值也非常高的 Flame 很快進(jìn)入我的視野。

在花費(fèi)了一番功夫之后,我將 flame 封裝成了 Docker 鏡像,F(xiàn)lame 的鏡像尺寸 50MB 多一點(diǎn)點(diǎn)。

它的使用方式很簡(jiǎn)單,將下面的內(nèi)容保存為 docker-compose.yml :

version: '3.6'

services:
  flame:
    image: soulteary/flame:2.2.0
    container_name: flame
    volumes:
      - ./data:/app/data
      # 如果需要 Docker 集成,可選擇開啟
      # - /var/run/docker.sock:/var/run/docker.sock
    ports:
      - 5005:5005
    # 如果想使用 Docker Secrets,可選擇開啟
    # secrets:
    #   - password # optional but required for (1)
    environment:
      - NODE_ENV=production
      # 默認(rèn)管理密碼
      - PASSWORD=flame_password
      # 如果想使用 Docker Secrets,可選擇開啟
      # - PASSWORD_FILE=/run/secrets/password # optional but required for (1)
    restart: always

# 如果想使用 Docker Secrets,可選擇開啟
# secrets:
#   password:
#     file: /path/to/secrets/password

然后使用 docker-compose up -d 啟動(dòng)應(yīng)用,接著訪問瀏覽器中的 http://localhost:5005 就能看到軟件的默認(rèn)界面啦。

關(guān)于如何進(jìn)行個(gè)性化調(diào)整,以及書簽的添加等,同樣非常簡(jiǎn)單,聰明的你可以自行探索,為了不“劇透”,這里就不過多贅述啦。

這個(gè)項(xiàng)目地址在這里: https://github.com/soulteary/docker-flame ,其中的一些改動(dòng)已經(jīng)被合并到了 flame 官方倉庫。

接下來聊聊為什么我要制作 Flare、以及 Flare 如何在容器環(huán)境下使用。

為什么要制作 Flare

隨著深入使用 Flame,我發(fā)現(xiàn)了一些體驗(yàn)上的小問題:比如軟件不支持搜索中文內(nèi)容;比如軟件獲取天氣數(shù)據(jù)需要使用經(jīng)緯度(以及需要注冊(cè)獲取天氣平臺(tái) API)非常麻煩;軟件后臺(tái)存在一些浪費(fèi)性能的問題;軟件前端的實(shí)現(xiàn)方式,在大量書簽的場(chǎng)景下,性能表現(xiàn)比較糟糕,會(huì)出現(xiàn)卡頓;軟件雖然功能簡(jiǎn)單,但是整體性能不夠好,我希望用更少的資源運(yùn)行這個(gè)服務(wù)。

而 Flame 原本的功能設(shè)計(jì),對(duì)于我個(gè)人使用的場(chǎng)景而言,也顯得稍微有一些多余:

  • 我不太需要軟件本身的 Docker、K8S 集成功能,這兩個(gè)功能的初衷是從 Docker Label、K8S Ingress 注解中提取鏈接信息,進(jìn)行動(dòng)態(tài)的鏈接添加和刪除,但是我比較抵觸 All In One,所以我的設(shè)備和服務(wù)多是分布式部署的,并且長(zhǎng)期運(yùn)行的服務(wù)非常固定,變動(dòng)比較少;
  • 隨著整理了越來越多的書簽后,我發(fā)現(xiàn)我對(duì)于書簽的寫入頻率其實(shí)不高,原本的書簽編輯器的體驗(yàn)也不是很好,我希望有更好的方式來進(jìn)行替換;
  • 以及作為私人使用的書簽導(dǎo)航,我似乎也不需要用戶功能;
  • Flame 使用 SQLite 進(jìn)行數(shù)據(jù)存儲(chǔ),雖然比使用 PG、MySQL 要輕不少,但是在數(shù)據(jù)變化不大的場(chǎng)景下,或許結(jié)構(gòu)化的明文保存會(huì)簡(jiǎn)單,也更利于未來的數(shù)據(jù)遷移。

在明確了上面的問題,以及我到底想要什么之后,我制作了 Flare, 一個(gè)輕量的、適合私有化部署,個(gè)人使用的導(dǎo)航工具 。

相比較 Flame 在裁剪功能后封裝的容器鏡像需要 50MB 的大小,F(xiàn)lare 只需要不到 10MB 的空間,以及遠(yuǎn)低于 Flame 的運(yùn)行資源(通常情況下遠(yuǎn)小于 1% 的CPU占用、30M以內(nèi)的內(nèi)存)。

在這個(gè)基礎(chǔ)上,F(xiàn)lare 除了可以運(yùn)行在傳統(tǒng)的 x86 主機(jī)上,比如你的筆記本、你的NAS、云服務(wù)器上,還可以運(yùn)行在各種 ARM 設(shè)備上,甚至是很早之前分享過的成本不到 50 元的玩客云上。(感興趣的同學(xué)可以閱讀 《玩客云折騰記錄(一):編譯 ArmBian 系統(tǒng)》 )

我們可以使用文本文件的方式來針對(duì)鏈接數(shù)據(jù)的管理,尤其是在鏈接數(shù)據(jù)非常少的情況下,簡(jiǎn)單的文本文件,配合任意你喜愛的編輯器,編輯體驗(yàn)遠(yuǎn)勝于各種簡(jiǎn)單引入的 Web IDE 或簡(jiǎn)陋的應(yīng)用提交表單。而這些文件,也更容易保存、備份,以及在未來合適的時(shí)候,導(dǎo)入到更好的工具中。

在容器中使用 Flare

Flare 的使用同樣也非常簡(jiǎn)單,你可以使用 docker 的一句話命令,快速啟動(dòng)一個(gè) flare 應(yīng)用:

docker run --rm -it -p 5005:5005 -v `pwd`/app:/app soulteary/flare:0.2.3

或者將下面的內(nèi)容保存為 docker-compose.yml :

version: '3.6'

services:
  flame:
    image: soulteary/flare:0.2.3
    restart: always
    command: flare
    ports:
      - 5005:5005
    volumes:
      - ./app:/app

然后使用 docker-compose up -d 來啟動(dòng)應(yīng)用。

當(dāng)應(yīng)用啟動(dòng)完畢之后,還是訪問相同的瀏覽器地址,你將看到類似下面的界面:

應(yīng)用會(huì)在啟動(dòng)目錄的 app 文件夾中生成默認(rèn)的示例數(shù)據(jù),方便你參考修改,數(shù)據(jù)文件格式為 yaml ,如果你不熟悉也沒關(guān)系,參考文件內(nèi)的內(nèi)容格式進(jìn)行調(diào)整,保證縮進(jìn)一致即可。

當(dāng)你編輯完 app/bookmarkd.yml 和 app/apps.yml 兩個(gè)文件后,刷新瀏覽器,你的修改就生效了,不必進(jìn)行應(yīng)用重啟。

其他

Flare 目前還處于比較早期的階段,不過對(duì)于個(gè)人使用而言,或許已經(jīng)足夠了,和 Flame 一樣漂亮的界面,更高效的資源使用,沒有遷移負(fù)擔(dān)的數(shù)據(jù)格式。

接下來,我會(huì)在慢慢更新這個(gè)小工具,在保證數(shù)據(jù)兼容、性能高效的前提下,慢慢將它的用戶體驗(yàn)持續(xù)提升,如果你對(duì)這個(gè)項(xiàng)目感興趣,或者在使用過程中遇到了問題,可以關(guān)注或者在這里反饋: https://github.com/soulteary/docker-flare 。

至于書簽內(nèi)容的離線管理,我將在后續(xù)文章中介紹另外一個(gè)工具,先按下不表。

最后

寫到這里,兩款書簽導(dǎo)航軟件的使用就介紹完啦。

瀏覽器書簽是眾多知識(shí)管理方式的其中一種,它和電子書庫、電子筆記、桌面文件、云端文檔等其他形式的工具一起構(gòu)建了我們的知識(shí)體系。

接下來的文章里,我會(huì)逐步分享我在過程中的一些經(jīng)驗(yàn)。希望能幫助到有同樣需求的你。

到此這篇關(guān)于使用 Docker 搭建適用于 HomeLab 的書簽導(dǎo)航的文章就介紹到這了,更多相關(guān)Docker 搭建HomeLab 書簽導(dǎo)航內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 淺談Docker鏡像列表中的none:none是什么

    淺談Docker鏡像列表中的none:none是什么

    這篇文章主要介紹了Docker鏡像列表中的none:none問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • 基于docker?部署canvas-lms的詳細(xì)步驟

    基于docker?部署canvas-lms的詳細(xì)步驟

    這篇文章主要介紹了基于docker?部署?canvas-lms,本文分步驟給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-03-03
  • Docker 教程之基本概念(鏡像,容器,倉庫)詳解

    Docker 教程之基本概念(鏡像,容器,倉庫)詳解

    這篇文章主要介紹了Docker 教程之基本概念(鏡像,容器,倉庫)詳解的相關(guān)資料,這里對(duì)Docker 的基本知識(shí)做一個(gè)介紹,需要的朋友可以參考下
    2016-12-12
  • 詳解Docker創(chuàng)建php開發(fā)環(huán)境遇到的權(quán)限問題解決方案

    詳解Docker創(chuàng)建php開發(fā)環(huán)境遇到的權(quán)限問題解決方案

    本篇文章主要介紹了Docker創(chuàng)建php開發(fā)環(huán)境遇到的權(quán)限問題解決方案,具有一定的參考價(jià)值,有需要的可以了解一下。
    2016-11-11
  • 利用drone?ci自動(dòng)化部署靜態(tài)博客的完整步驟

    利用drone?ci自動(dòng)化部署靜態(tài)博客的完整步驟

    drone是基于容器的構(gòu)建服務(wù),配置簡(jiǎn)單且免費(fèi),在 github上也有20Kstar,下面這篇文章主要給大家介紹了關(guān)于利用drone?ci自動(dòng)化部署靜態(tài)博客的相關(guān)資料,需要的朋友可以參考下
    2022-05-05
  • Docker部署SQL?Server及最佳應(yīng)用小結(jié)

    Docker部署SQL?Server及最佳應(yīng)用小結(jié)

    SQL?Server是由Microsoft開發(fā)和推廣的關(guān)系數(shù)據(jù)庫管理系統(tǒng)(DBMS),本文總結(jié)了容器環(huán)境下的部署及實(shí)踐應(yīng)用,需要的朋友可以參考下
    2022-08-08
  • Docker制作鏡像的完整過程

    Docker制作鏡像的完整過程

    本文主要介紹了Docker制作鏡像的完整過程,以制作CentOS鏡像為例,講述對(duì)鏡像自定義,打包以及推送的遠(yuǎn)程倉庫的過程,感興趣的可以了解一下
    2021-11-11
  • Docker 鏡像國(guó)內(nèi)加速的方法匯總(收藏版)

    Docker 鏡像國(guó)內(nèi)加速的方法匯總(收藏版)

    本文介紹了在國(guó)內(nèi)使用Docker時(shí)遇到的加速和優(yōu)化方法,針對(duì)國(guó)內(nèi)下載速度慢和斷線問題,可以使用國(guó)內(nèi)可用的DockerRegistryMirrors或自建DockerRegistryMirror/Proxy,針對(duì)沒有公共鏡像庫賬號(hào)導(dǎo)致的限流問題,可以注冊(cè)各個(gè)鏡像庫賬號(hào)并登錄,感興趣的朋友跟隨小編一起看看吧
    2025-01-01
  • Spring Boot 2.4 新特性之一鍵構(gòu)建Docker鏡像的過程詳解

    Spring Boot 2.4 新特性之一鍵構(gòu)建Docker鏡像的過程詳解

    這篇文章主要介紹了Spring Boot 2.4 新特性之一鍵構(gòu)建Docker鏡像的過程詳解,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-12-12
  • docker容器中安裝vim問題解決

    docker容器中安裝vim問題解決

    本文主要介紹了docker容器中安裝vim問題解決,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-08-08

最新評(píng)論

志丹县| 和平县| 台山市| 宣化县| 剑阁县| 娄底市| 大连市| 罗山县| 扎鲁特旗| 博客| 罗源县| 大田县| 镇安县| 张家界市| 靖宇县| 江孜县| 四川省| 涪陵区| 临颍县| 托克托县| 鸡东县| 大埔县| 嵊州市| 安达市| 黔西| 郧西县| 绥棱县| 小金县| 喜德县| 溧水县| 白水县| 芦溪县| 四平市| 田阳县| 元朗区| 汝南县| 西昌市| 神木县| 二连浩特市| 当涂县| 南郑县|