mirror of
https://github.com/shadoll/helm-charts.git
synced 2026-08-28 03:27:08 +00:00
feat: Initialize Helm charts repository with .gitignore, README, and Jellyfin chart documentation.
This commit is contained in:
+29
@@ -0,0 +1,29 @@
|
|||||||
|
# OS generated files
|
||||||
|
.DS_Store
|
||||||
|
.AppleDouble
|
||||||
|
.LSOverride
|
||||||
|
Icon
|
||||||
|
|
||||||
|
# Thumbnails
|
||||||
|
._*
|
||||||
|
|
||||||
|
# Files that might contain secrets
|
||||||
|
*.secret.yaml
|
||||||
|
*.sealed.yaml
|
||||||
|
.env
|
||||||
|
.env.*
|
||||||
|
|
||||||
|
# Helm dependencies
|
||||||
|
charts/*.tgz
|
||||||
|
charts/*/charts/
|
||||||
|
charts/*/tmpcharts/
|
||||||
|
|
||||||
|
# IDE files
|
||||||
|
.vscode/
|
||||||
|
.idea/
|
||||||
|
*.swp
|
||||||
|
*.swo
|
||||||
|
|
||||||
|
# Temporary files
|
||||||
|
tmp/
|
||||||
|
*.bak
|
||||||
@@ -0,0 +1,58 @@
|
|||||||
|
# Shadoll Helm Charts
|
||||||
|
|
||||||
|
A collection of custom and optimized Helm charts for self-hosted applications on Kubernetes.
|
||||||
|
|
||||||
|
## Repository Structure
|
||||||
|
|
||||||
|
- `/charts`: Individual application charts (e.g. `jellyfin`).
|
||||||
|
- `/docs`: Detailed application documentation and guides.
|
||||||
|
|
||||||
|
## Quick Start
|
||||||
|
|
||||||
|
### 1. Clone the repository
|
||||||
|
```bash
|
||||||
|
git clone https://github.com/shadoll/helm-charts.git
|
||||||
|
cd helm-charts
|
||||||
|
```
|
||||||
|
|
||||||
|
### 2. Available Charts
|
||||||
|
|
||||||
|
| Chart | Description | Status |
|
||||||
|
|-------|-------------|--------|
|
||||||
|
| [Jellyfin](docs/jellyfin.md) | Media server with PostgreSQL support | Ready |
|
||||||
|
|
||||||
|
### 3. Usage with FluxCD
|
||||||
|
|
||||||
|
To use these charts in a FluxCD environment, add the repository as a Source:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
apiVersion: source.toolkit.fluxcd.io/v1
|
||||||
|
kind: GitRepository
|
||||||
|
metadata:
|
||||||
|
name: shadoll-charts
|
||||||
|
namespace: flux-system
|
||||||
|
spec:
|
||||||
|
interval: 1h
|
||||||
|
url: https://github.com/shadoll/helm-charts
|
||||||
|
ref:
|
||||||
|
branch: main
|
||||||
|
```
|
||||||
|
|
||||||
|
Then reference the chart in your `HelmRelease`:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
spec:
|
||||||
|
chart:
|
||||||
|
spec:
|
||||||
|
chart: ./jellyfin
|
||||||
|
sourceRef:
|
||||||
|
kind: GitRepository
|
||||||
|
name: shadoll-charts
|
||||||
|
```
|
||||||
|
|
||||||
|
## Maintenance
|
||||||
|
|
||||||
|
This repository follows automated version tracking where possible. For manual updates, modify the `appVersion` and increment the `version` in the respective `Chart.yaml`.
|
||||||
|
|
||||||
|
---
|
||||||
|
© 2026 Shadoll. Managed with ❤️ for the Home Lab.
|
||||||
@@ -0,0 +1,37 @@
|
|||||||
|
# Jellyfin Helm Chart
|
||||||
|
|
||||||
|
A modern, parameterized Helm chart for Jellyfin media server with PostgreSQL support and integrated backup capabilities.
|
||||||
|
|
||||||
|
## Features
|
||||||
|
- **PostgreSQL Support**: Uses the Jellyfin PostgreSQL adapter for robust database storage.
|
||||||
|
- **Database Initialization**: Automated schema and database creation via `db-init` job.
|
||||||
|
- **Backups**: Integrated CronJob for automated database backups with configurable retention.
|
||||||
|
- **Ingress**: Dual-ingress pattern support (Internal HTTP and External HTTPS via Traefik).
|
||||||
|
- **Security**: Designed for use with `existingSecret` for credentials management.
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
### 1. Create a Secret
|
||||||
|
Create a secret named `jellyfin-secret` containing:
|
||||||
|
- `JELLYFIN_POSTGRESQL_PASSWORD`: The password for the jellyfin user.
|
||||||
|
- `POSTGRES_ADMIN_PASSWORD`: The superuser password for database initialization.
|
||||||
|
|
||||||
|
### 2. Configure Values
|
||||||
|
Review the [values.yaml](https://github.com/shadoll/helm-charts/blob/main/jellyfin/values.yaml) and create your override file.
|
||||||
|
|
||||||
|
### 3. Install
|
||||||
|
```bash
|
||||||
|
helm install my-jellyfin ./jellyfin -f my-values.yaml
|
||||||
|
```
|
||||||
|
|
||||||
|
## Configuration Reference
|
||||||
|
|
||||||
|
| Parameter | Description | Default |
|
||||||
|
|-----------|-------------|---------|
|
||||||
|
| `image.repository` | Jellyfin image repository | `ghcr.io/rogly-net/jellyfin-postgresql` |
|
||||||
|
| `image.tag` | Jellyfin image tag | (Chart appVersion) |
|
||||||
|
| `postgres.host` | PostgreSQL host address | `postgres-tcp.postgres.svc.cluster.local` |
|
||||||
|
| `persistence.config.enabled` | Enable config persistence | `true` |
|
||||||
|
| `backup.enabled` | Enable automated backups | `true` |
|
||||||
|
|
||||||
|
For detailed configuration, see the [values.yaml](https://github.com/shadoll/helm-charts/blob/main/jellyfin/values.yaml).
|
||||||
Reference in New Issue
Block a user