Back to list
taoi11

homepage-docker

by taoi11

Welcome to my homepage

0🍴 0📅 Jan 12, 2026

SKILL.md


name: homepage-docker description: Configure docker.yaml for Homepage dashboard - Docker socket, remote hosts, TLS, swarm, and auto-discovery labels license: MIT compatibility: opencode metadata: project: homepage type: yaml-config

Homepage docker.yaml Configuration

Reference for Docker integration.

Structure

---
server-name:
  socket: /var/run/docker.sock

Local Socket

my-docker:
  socket: /var/run/docker.sock

docker-compose mount:

homepage:
  volumes:
    - /var/run/docker.sock:/var/run/docker.sock

Note: Homepage must run as root for socket access.

Remote TCP

my-remote-docker:
  host: 192.168.0.101
  port: 2375

TLS Configuration

my-remote-docker:
  host: 192.168.0.101
  port: 2375
  tls:
    keyFile: tls/key.pem
    caFile: tls/ca.pem
    certFile: tls/cert.pem

HTTPS via Reverse Proxy

my-docker:
  host: dockerproxy
  port: 443
  protocol: https

Docker Socket Proxy

Using docker-socket-proxy:

my-docker:
  host: dockerproxy
  port: 2375

docker-compose:

dockerproxy:
  image: ghcr.io/tecnativa/docker-socket-proxy:latest
  environment:
    - CONTAINERS=1
    - SERVICES=1
    - POST=0
  ports:
    - 127.0.0.1:2375:2375
  volumes:
    - /var/run/docker.sock:/var/run/docker.sock:ro

HTTP Headers

For reverse proxy with auth:

my-docker:
  host: dockerproxy
  port: 443
  protocol: https
  headers:
    Authorization: Basic <base64-credentials>

Docker Swarm

my-docker:
  socket: /var/run/docker.sock
  swarm: true

Deploy on manager node:

deploy:
  placement:
    constraints:
      - node.role == manager

Service Integration

In services.yaml:

- Emby:
    server: my-docker # Matches docker.yaml key
    container: emby # Container name
    showStats: true

Auto-Discovery Labels

Add to container labels:

services:
  emby:
    labels:
      - homepage.group=Media
      - homepage.name=Emby
      - homepage.icon=emby.png
      - homepage.href=http://emby.home/
      - homepage.description=Media server
      - homepage.widget.type=emby
      - homepage.widget.url=http://emby.home
      - homepage.widget.key=your-api-key

Multiple Widgets via Labels

labels:
  - homepage.widgets[0].type=emby
  - homepage.widgets[0].url=http://emby.home
  - homepage.widgets[0].key=api-key
  - homepage.widgets[1].type=uptimekuma
  - homepage.widgets[1].url=http://uptimekuma.home
  - homepage.widgets[1].slug=emby-status

Multiple Instances

For multiple Homepage deployments:

labels:
  - homepage.group=Media
  - homepage.name=Emby
  - homepage.instance.internal.href=http://emby.lan/
  - homepage.instance.public.href=https://emby.domain.com/

In settings.yaml:

instanceName: internal # or public

Complete Example

---
# Local Docker
local:
  socket: /var/run/docker.sock

# Remote Unraid server
Unraid:
  host: unraid.bun-delta.ts.net
  port: 2375

# Remote with TLS
production:
  host: prod.example.com
  port: 2376
  tls:
    keyFile: tls/key.pem
    caFile: tls/ca.pem
    certFile: tls/cert.pem

Score

Total Score

35/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

0/10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

0/5
タグ

1つ以上のタグが設定されている

0/5

Reviews

💬

Reviews coming soon