Photo Stream 是一個更簡單的照片庫,最初由 @maxvoltar 創建,現在由 @waschinski、@boerniee 和朋友維護。易於使用,自託管,無跟踪,只有照片。
該儲存庫的演示託管在免費渲染計劃上。
我們喜歡拍照並分享。問題是現在很難真正擁有自己的照片以及它們在社交媒體上的呈現方式,因此我們開始為它們創造一個位置。您可以自行託管,無論您在哪裡(Netlify、Github Pages...),一切盡在您的掌控之中。
先前安裝 Photo Stream 的建議方法是分叉儲存庫。在我看來,這並不是真正的最佳選擇,作為 Docker 的粉絲,我開始致力於優化以在容器中運行 Photo Stream。這就是為什麼配置已從_config.yml
移至.env
因此當從初始儲存庫切換時,您必須相應地設定.env
檔案。
Docker Hub 上有一個映像,您可以使用它來拉取:
docker pull waschinski/photo-stream:latest
或下載docker-compose.yml
文件,根據需要更改配置並使用以下命令運行 Photo Stream:
docker-compose up -d
photos
資料夾可以作為卷安裝。確保將您的照片放在名為original
的資料夾中。
linux/arm/v6
):先決條件:在 RPI 上安裝了 docker 和 docker-compose
在 docker-compose.yml 註解image
部分,取消註解build
部分,並將BASE_IMAGE
arg 設為arm32v6/ruby:3.1.2-alpine3.16
。
然後docker-compose build
然後docker-compose up -d
從發布頁面獲取最新版本並將其解壓縮。
確保滿足以下要求才能執行 Photo Stream:
如何安裝這些取決於您的作業系統。 Debian 用戶將使用sudo apt-get install build-essential
而在 MacOS 上,你應該使用xcode-select --install
。
檢查您是否已經安裝了 Ruby ( ruby -v
)。如果沒有,您可以按照此處提供的安裝說明進行操作。
有關如何安裝 libvips 的說明可以在此處找到。
接下來,您必須安裝 Jekyll(一個簡單的gem install bundler jekyll
就足夠了)。確保您滿足其要求或在繼續之前安裝它們。
一旦滿足所有這些要求,您終於可以安裝 Photo Stream 所需的所有 gem(您應該位於 Photo Stream 資料夾中):
bundle install
分叉此儲存庫並將您自己的照片新增至photos/original
資料夾。登入您的渲染帳戶或建立新帳戶。在渲染儀表板上建立一個新的靜態網站。連接您的 Github 帳戶並選擇您的照片流儲存庫。選擇正確的分支並調整建置命令( bundle exec jekyll build
)和發布目錄( _site
)。在「進階」下,您Add Secret File
並建立一個包含調整後的環境變數的.env
檔案。您也許可以直接在存儲庫中更改此文件並跳過前一步(添加秘密文件),但我尚未對此進行測試。
將您的照片(未調整大小)放入photos/original
目錄中。您可以選擇為它們命名,該名稱將顯示為照片頁面和 RSS 來源中的標題。
此命令將在您的本機電腦上提供靜態頁面。 http://本地主機:4000
bundle exec jekyll serve
您也可以靜態建立要上傳到常規網站主機的網站。
bundle exec jekyll build
現在將 _site/ 目錄的內容上傳到您的網頁伺服器。
只需直接從_scripts
資料夾執行您需要執行的腳本即可,如下所示:
sh ./_script/build-n-lftp.sh
build.sh
將建立您的站點,而rsync.sh
和lftp.sh
將相應地同步它。 build-n-rsync.sh
和build-n-lftp.sh
只是將這兩個步驟合而為一。不要忘記在.env
檔中加入同步配置。
您要做的第一件事是編輯/.env
中的一些內容:
TITLE
:照片流的標題。EMAIL
:您的電子郵件地址(此行是可選的,您可以將其刪除)。AUTHOR_NAME
:您的名字。AUTHOR_EMAIL
:您的電子郵件地址(可選)。AUTHOR_WEBSITE
:您的網站(可能是此照片流的地址)。DESCRIPTION
:您的照片流的描述。BASEURL
:應留空或刪除URL
:此照片將在哪裡直播(例如:https: https://maxvoltar.photo
),不得以 / 結尾,否則連結會混亂。SHOW_RSS_FEED
:設定為1
或0
以啟用或停用顯示 RSS 提要按鈕。SHOW_OFFICIAL_GITHUB
:設定為1
或0
以啟用或停用顯示官方 github 儲存庫的連結。DEFAULT_REVERSE_SORT
:將其設為1
可反轉照片排序順序並先顯示最舊的照片。預設為0
。ALLOW_ORDER_SORT_CHANGE
:將其設定為1
以允許使用者反轉照片的排序順序。ALLOW_ORIGINAL_DOWNLOAD
:將其設為1
以允許使用者下載原始大小的照片。ALLOW_INDEXING
:將此設定為0
以防止爬蟲透過新增元標記robots
來索引您的照片流。預設為1
。ALLOW_IMAGE_SHARING
:將其設為1
以允許使用者與朋友分享映像。預設為1
。TWITTER_USERNAME
:您的 Twitter 使用者名稱或刪除/評論此行。GITHUB_USERNAME
:您的 Github 使用者名稱或刪除/註釋此行。INSTAGRAM_USERNAME
:您的 Instagram 使用者名稱或刪除/評論此行。SYNCUSER
:lftp/rsync 在 shell 腳本中使用您的使用者名稱將您的網站同步到您的網頁伺服器。SYNCPASS
:shell 腳本中的lftp/rsync 使用您的密碼將您的網站同步到網頁伺服器。SYNCSERVER
:shell 腳本中 lftp/rsync 使用的 Web 伺服器的 URL,您的網站將同步到該伺服器。SYNCFOLDER
:shell 腳本中 lftp/rsync 使用的 Web 伺服器上的資料夾,您的網站將同步到該資料夾。不要包含社交句柄的@
部分。僅在設定後才會顯示指向您的 Github、Twitter 和 Instagram 個人資料的連結。
在發布您的網站之前,Jekyll 會將您的照片大小調整為 3 個不同的儲存桶:
/photos/large
:只有當使用者導航到照片頁面時才會顯示這些內容。預設情況下,它們的最大寬度和高度分別調整為 2048 和 2048。如果您願意,可以透過更改/_config.yml
中的值來更改這些值(預設情況下它們看起來像這樣: resize_to_limit: [2048, 2048]
)。/photos/thumbnail
:這些在網格中使用。照片流將加載首屏上方的所有縮圖,然後向下滾動時加載更多縮圖;一切都是為了節省頻寬。這些的標準尺寸為 640 x 640(最大),但您也可以根據需要更改此值。/photos/tint
:頁面載入第一批縮圖時您看到的內容,也用作照片頁面的背景。