Photo Stream adalah rumah sederhana untuk foto Anda yang awalnya dibuat oleh @maxvoltar dan sekarang dikelola oleh @waschinski, @boerniee, dan teman-teman. Mudah digunakan, dihosting sendiri, tanpa pelacakan, hanya foto.
Ada demo repositori ini yang dihosting pada Paket Gratis di Render.
Kami suka mengambil foto dan membagikannya. Masalahnya adalah saat ini sulit untuk benar-benar memiliki foto Anda dan bagaimana foto tersebut ditampilkan di media sosial, jadi kami mulai menyediakan tempat untuk foto tersebut. Anda menghostingnya sendiri, di mana pun Anda inginkan (Netlify, Github Pages...), Anda memegang kendali.
Sebelumnya cara yang disarankan untuk menginstal Photo Stream adalah dengan membagi repositori. Menurut pendapat saya ini tidak terlalu optimal dan sebagai penggemar Docker saya mulai mengerjakan optimasi untuk menjalankan Photo Stream dalam sebuah wadah. Itu sebabnya konfigurasi telah dipindahkan dari _config.yml
ke .env
jadi ketika beralih dari repo awal Anda harus mengatur file .env
yang sesuai.
Ada gambar di Docker Hub yang dapat Anda tarik menggunakan:
docker pull waschinski/photo-stream:latest
Atau unduh file docker-compose.yml
, ubah konfigurasi sesuai kebutuhan dan gunakan perintah berikut untuk menjalankan Photo Stream:
docker-compose up -d
Folder photos
dapat dipasang sebagai volume. Pastikan untuk meletakkan foto Anda di folder bernama original
.
linux/arm/v6
):Prasyarat : docker dan docker-compose diinstal pada RPI
Di bagian image
komentar docker-compose.yml, hapus komentar pada bagian build
, dan atur argumen BASE_IMAGE
ke arm32v6/ruby:3.1.2-alpine3.16
.
Kemudian docker-compose build
Kemudian docker-compose up -d
Ambil versi terbaru dari halaman rilis dan ekstrak.
Pastikan Anda memenuhi persyaratan berikut untuk menjalankan Photo Stream:
Cara menginstalnya tergantung pada OS Anda. Pengguna Debian akan menggunakan sudo apt-get install build-essential
sementara di MacOS Anda akan baik-baik saja dengan xcode-select --install
.
Periksa untuk melihat apakah Anda sudah menginstal Ruby ( ruby -v
). Jika tidak, Anda dapat mengikuti petunjuk instalasi yang disediakan di sini.
Petunjuk tentang cara menginstal libvips dapat ditemukan di sini.
Selanjutnya Anda harus menginstal Jekyll ( gem install bundler jekyll
yang sederhana sudah cukup). Pastikan Anda memenuhi persyaratannya atau menginstalnya juga sebelum melanjutkan.
Setelah semua persyaratan ini terpenuhi, Anda akhirnya dapat menginstal semua permata yang dibutuhkan oleh Photo Stream (Anda seharusnya berada di folder Photo Stream):
bundle install
Garpu repo ini dan tambahkan foto Anda sendiri ke folder photos/original
. Masuk ke akun Render Anda atau buat yang baru. Buat situs statis baru di Render Dashboard. Hubungkan akun Github Anda dan pilih repositori aliran foto Anda. Pilih cabang yang benar dan sesuaikan Build Command ( bundle exec jekyll build
) dan Publish Directory ( _site
). Di bawah Tingkat Lanjut, Anda Add Secret File
dan membuat file .env
yang berisi variabel lingkungan yang disesuaikan. Anda mungkin dapat mengubah file ini langsung di repo Anda dan melewati langkah sebelumnya (menambahkan file rahasia) tetapi saya belum mengujinya.
Letakkan foto Anda (tidak diubah ukurannya) di direktori photos/original
. Secara opsional, Anda dapat memberi mereka nama, yang akan muncul sebagai judul halaman foto dan di RSS feed.
Perintah ini akan menyajikan halaman statis di mesin lokal Anda. http://localhost:4000
bundle exec jekyll serve
Anda juga dapat membangun situs Anda secara statis untuk diunggah ke hosting biasa.
bundle exec jekyll build
Sekarang unggah konten direktori _site/ ke server web Anda.
Jalankan saja skrip yang perlu Anda jalankan langsung dari folder _scripts
seperti itu:
sh ./_script/build-n-lftp.sh
build.sh
akan membangun situs Anda sementara rsync.sh
dan lftp.sh
akan menyinkronkannya. build-n-rsync.sh
dan build-n-lftp.sh
hanya melakukan kedua langkah dalam satu langkah. Jangan lupa untuk menambahkan konfigurasi sinkronisasi Anda di file .env
.
Hal pertama yang ingin Anda lakukan adalah mengedit beberapa hal di /.env
:
TITLE
: Judul aliran foto Anda.EMAIL
: Alamat email Anda (baris ini opsional, Anda dapat menghapusnya).AUTHOR_NAME
: Nama Anda.AUTHOR_EMAIL
: Alamat email Anda (opsional).AUTHOR_WEBSITE
: Situs web Anda (bisa jadi alamat aliran foto ini).DESCRIPTION
: Deskripsi aliran foto Anda.BASEURL
: Harus dikosongkan atau dihilangkan URL
: Di mana streaming foto ini akan ditayangkan (contoh: https://maxvoltar.photo
), TIDAK boleh diakhiri dengan / atau tautan akan kacau.SHOW_RSS_FEED
: Setel ke 1
atau 0
untuk mengaktifkan atau menonaktifkan tampilan tombol RSS feed.SHOW_OFFICIAL_GITHUB
: Setel ke 1
atau 0
untuk mengaktifkan atau menonaktifkan menampilkan tautan ke repositori resmi github.DEFAULT_REVERSE_SORT
: Setel ini ke 1
untuk membalikkan urutan pengurutan foto dan menampilkan foto terlama terlebih dahulu. Defaultnya adalah 0
.ALLOW_ORDER_SORT_CHANGE
: Setel ini ke 1
untuk memungkinkan pengguna membalik urutan foto.ALLOW_ORIGINAL_DOWNLOAD
: Setel ini ke 1
untuk memungkinkan pengguna mengunduh foto dalam ukuran aslinya.ALLOW_INDEXING
: Setel ini ke 0
untuk mencegah perayap mengindeks aliran foto Anda dengan menambahkan tag meta robots
. Defaultnya adalah 1
.ALLOW_IMAGE_SHARING
: Setel ini ke 1
untuk mengizinkan pengguna berbagi gambar dengan teman. Defaultnya adalah 1
.TWITTER_USERNAME
: Nama pengguna Twitter Anda atau hapus/komentari baris ini.GITHUB_USERNAME
: Nama pengguna Github Anda atau hapus/komentari baris ini.INSTAGRAM_USERNAME
: Nama pengguna Instagram Anda atau hapus/komentari baris ini.SYNCUSER
: Nama pengguna Anda digunakan oleh lftp/rsync dalam skrip shell untuk menyinkronkan situs Anda ke server web Anda.SYNCPASS
: Kata sandi Anda digunakan oleh lftp/rsync dalam skrip shell untuk menyinkronkan situs Anda ke server web Anda.SYNCSERVER
: URL server web Anda digunakan oleh lftp/rsync dalam skrip shell tempat situs Anda akan disinkronkan.SYNCFOLDER
: Folder di server web Anda yang digunakan oleh lftp/rsync dalam skrip shell tempat situs Anda akan disinkronkan. Jangan sertakan @
-bagian dari pegangan sosial Anda. Tautan ke profil Github, Twitter, dan Instagram Anda hanya ditampilkan jika disetel.
Sebelum memublikasikan situs web Anda, Jekyll akan mengubah ukuran foto Anda menjadi 3 wadah berbeda:
/photos/large
: Ini hanya ditampilkan ketika pengguna menavigasi ke halaman foto. Secara default, ukurannya diubah menjadi lebar maksimum 2048 dan tinggi 2048. Jika mau, Anda dapat mengubahnya dengan mengubah nilai di /_config.yml
(secara default tampilannya seperti ini: resize_to_limit: [2048, 2048]
)./photos/thumbnail
: Ini digunakan dalam grid. Photo Stream akan memuat semua thumbnail di paro atas, dan lebih banyak lagi saat Anda menggulir ke bawah; semua untuk menghemat bandwidth. Ukuran standarnya adalah 640 x 640 (maks), namun Anda juga dapat mengubahnya jika diperlukan./photos/tint
: Apa yang Anda lihat saat halaman memuat kumpulan thumbnail pertama, juga digunakan sebagai latar belakang halaman foto.