← Все шаблоны · Ленты и закладки
Задеплойте Glance в один клик
Быстрый и легкий дашборд с вашими лентами, новостями, погодой, котировками и не только
Альтернатива Netvibes и Feedly на вашей машине.
Что такое Glance?
Glance — self-hosted дашборд, который собирает на одной странице то, что вы каждый день читаете и проверяете: RSS-ленты, сабреддиты, Hacker News и Lobsters, каналы YouTube и Twitch, погоду, биржевые котировки, календарь, новые релизы репозиториев GitHub и состояние ваших сайтов. Его используют как стартовую страницу браузера вместо Netvibes или читалки лент вроде Feedly, а еще на телефоне, где страница подстраивается под экран.
Все пишется в одном YAML-файле: сколько угодно страниц, каждая из колонок с виджетами, с темами, своим CSS и собственными виджетами, которые читают любой JSON API. Glance — одна программа на Go размером меньше 20 MB, занимает несколько десятков мегабайт памяти и загружает страницу примерно за секунду.
Этот шаблон запускает Glance с конфигом в томе, начиная с примера страницы, и со входом по имени пользователя и паролю, которые вы задаете, так что дашборд закрыт для посторонних. Пароль попадает в конфиг в виде bcrypt-хеша, а неудачные попытки входа считаются по собственному IP-адресу каждого посетителя.
Хостинг Glance на Pethost
- Вы входите в Pethost — с passkey, через GitHub или Google. Машины еще нет? Вы выбираете тариф, и ссылка ждет, пока машина не будет готова.
- Окно «Новый проект» открывается на приложении Glance. Вы заполняете то, что оно просит, и нажимаете «Создать проект»: Имя пользователя, Пароль администратора.
- Через минуту-две Glance работает по своему адресу с HTTPS. Секреты создаются случайно, а данные попадают в ночной бэкап.
- Это проект как любой другой: вы или ваш агент можете его изменить, откатить или восстановить.
Вопросы про Glance
Glance бесплатный?
Да. Glance распространяется с открытым кодом под лицензией AGPL-3.0, платной редакции у него нет, и если запускать его самому, платить придется только за машину.
Как добавить в Glance виджет или страницу?
Отредактируйте glance.yml: у каждой страницы есть колонки, у каждой колонки — список виджетов, и у каждого виджета — тип, например rss, reddit, weather или videos, и свои параметры. Glance перезагружает страницу, как только файл сохранен, а если в файле ошибка, продолжает показывать последнюю рабочую версию.
Может ли Glance показывать мои собственные сервисы или API?
Да. Виджет monitor показывает, отвечают ли ваши сайты, а виджет custom-api читает любой JSON API и отображает его по шаблону, который вы пишете сами. Виджеты от сообщества так добавляют поддержку многих сервисов.
Работает ли Glance на телефоне?
Да. Его страница рассчитана и на маленькие экраны, и ее можно добавить на главный экран. Войдите один раз, и сессия продлится 14 дней.
Сколько памяти и диска нужно Glance?
Glance: совсем небольшие требования — около 20 MB памяти, а на диске он не хранит ничего, кроме своего конфига. На Pethost ему хватит тарифа Starter, и рядом останется место для других приложений.
Glance: файл Docker Compose
Шаблон — это этот compose.yaml и переменные, которые пишутся в .env проекта при его создании. Pethost запускает файл так, как он написан.
Контейнеры: glance (glanceapp/glance:v0.8.7).
Тома, в ночном бэкапе: config.
services:
glance:
image: glanceapp/glance:v0.8.7
restart: unless-stopped
environment:
ADMIN_USERNAME: ${ADMIN_USERNAME}
ADMIN_PASSWORD: ${ADMIN_PASSWORD}
# The dashboard is /app/config/glance.yml, yours to edit: Glance reloads it when it is saved.
# Its first start writes it from the one below and makes the key that signs sessions. Glance
# puts ${VARIABLES} into the file as text before it reads it, so the password goes in as its
# bcrypt hash, made at every start from the project's .env.
entrypoint: ["/bin/sh", "-c"]
command:
- |
set -e
cd /app/config
[ -f .secret-key ] || (umask 077 && /app/glance secret:make > .secret-key)
[ -f glance.yml ] || cat /etc/glance/glance.yml > glance.yml
GLANCE_SECRET_KEY="$$(cat .secret-key)"
GLANCE_PASSWORD_HASH="$$(/app/glance password:hash "$$ADMIN_PASSWORD")" || {
echo "$$GLANCE_PASSWORD_HASH" >&2
exit 1
}
export GLANCE_SECRET_KEY GLANCE_PASSWORD_HASH
unset ADMIN_PASSWORD
exec /app/glance --config /app/config/glance.yml
configs:
- source: glance
target: /etc/glance/glance.yml
volumes:
- config:/app/config
configs:
glance:
content: |
server:
# Requests come through the proxy: failed sign-ins are counted by the client's own address.
proxied: true
auth:
secret-key: $${GLANCE_SECRET_KEY}
users:
"$${ADMIN_USERNAME}":
password-hash: $${GLANCE_PASSWORD_HASH}
pages:
- name: Home
columns:
- size: small
widgets:
- type: calendar
first-day-of-week: monday
- type: rss
limit: 10
collapse-after: 3
cache: 12h
feeds:
- url: https://selfh.st/rss/
title: selfh.st
limit: 4
- url: https://ciechanow.ski/atom.xml
- url: https://www.joshwcomeau.com/rss.xml
title: Josh Comeau
- url: https://samwho.dev/rss.xml
- url: https://ishadeed.com/feed.xml
title: Ahmad Shadeed
- size: full
widgets:
- type: group
widgets:
- type: hacker-news
- type: lobsters
- type: videos
channels:
- UCXuqSBlHAE6Xw-yeJA0Tunw # Linus Tech Tips
- UCR-DXc1voovS8nhAvccRZhg # Jeff Geerling
- UCsBjURrPoezykLs9EqgamOA # Fireship
- UCBJycsmduvYEL83R_U4JriQ # Marques Brownlee
- UCHnyfMqiRRG1u-2MsSQLbXA # Veritasium
- type: group
widgets:
- type: reddit
subreddit: technology
show-thumbnails: true
- type: reddit
subreddit: selfhosted
show-thumbnails: true
- size: small
widgets:
- type: weather
location: London, United Kingdom
units: metric
hour-format: 24h
- type: markets
markets:
- symbol: SPY
name: S&P 500
- symbol: BTC-USD
name: Bitcoin
- symbol: NVDA
name: NVIDIA
- symbol: AAPL
name: Apple
- symbol: MSFT
name: Microsoft
- type: releases
cache: 1d
repositories:
- glanceapp/glance
- go-gitea/gitea
- immich-app/immich
- syncthing/syncthing
volumes:
config:
Еще в категории «Ленты и закладки»
- FreshRSSЧиталка лент RSS и Atom
- RSSHubRSS-ленты для сайтов, у которых их нет
- linkdingМенеджер закладок с тегами и поиском
- KarakeepПриложение для закладок со ссылками, заметками и изображениями, с полнотекстовым поиском
- RSS-BridgeRSS- и Atom-ленты для сайтов, у которых их нет
- ArchiveBoxСохраняйте страницы, видео и статьи в HTML, PDF, скриншотах и медиафайлах — свой архив интернета