From 7292b1494545e0f2305e39db3728e08e343dbdf8 Mon Sep 17 00:00:00 2001 From: Ulas Date: Sun, 5 Apr 2026 16:20:24 +0200 Subject: [PATCH] feat(docker): use pre-built GHCR image in docker-compose by default (#25) docker-compose.yml now references ghcr.io/ulsklyc/oikos:latest so users can start the app with a single 'docker compose up' without cloning or building locally. The build: . entry is retained for contributors who want to build from source with --build. README Quick Start updated to document both the no-clone path (curl docker-compose + .env.example) and the build-from-source path. --- CHANGELOG.md | 6 ++++++ README.md | 14 +++++++++++++- docker-compose.yml | 5 +++-- package.json | 2 +- 4 files changed, 23 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 94a1fa6..00e90ca 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [0.11.8] - 2026-04-05 + +### Changed +- `docker-compose.yml` now references the pre-built GHCR image (`ghcr.io/ulsklyc/oikos:latest`) by default - no local build needed to get started (#25) +- README Quick Start now shows both the pre-built image path (no clone required) and the build-from-source path + ## [0.11.7] - 2026-04-05 ### Added diff --git a/README.md b/README.md index 9285c7b..42ffa14 100644 --- a/README.md +++ b/README.md @@ -65,9 +65,21 @@ ## Quick Start +**Option A — pre-built image (fastest, no clone required):** + +```bash +curl -O https://raw.githubusercontent.com/ulsklyc/oikos/main/docker-compose.yml +curl -O https://raw.githubusercontent.com/ulsklyc/oikos/main/.env.example +cp .env.example .env # edit .env — set SESSION_SECRET and DB_ENCRYPTION_KEY +docker compose up -d +docker compose exec oikos node setup.js +``` + +**Option B — build from source:** + ```bash git clone https://github.com/ulsklyc/oikos.git && cd oikos -cp .env.example .env # then edit .env - set SESSION_SECRET and DB_ENCRYPTION_KEY +cp .env.example .env # edit .env — set SESSION_SECRET and DB_ENCRYPTION_KEY docker compose up -d --build docker compose exec oikos node setup.js ``` diff --git a/docker-compose.yml b/docker-compose.yml index 85c7321..7e4ca7f 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,6 +1,7 @@ services: oikos: - build: . + image: ghcr.io/ulsklyc/oikos:latest + build: . # optional: use --build to build locally instead container_name: oikos restart: unless-stopped ports: @@ -12,7 +13,7 @@ services: environment: - NODE_ENV=production - DB_PATH=/data/oikos.db - # Auf false setzen wenn kein HTTPS/Reverse-Proxy (direkter HTTP-Zugriff) + # Set to false when not using HTTPS/reverse proxy (direct HTTP access) - SESSION_SECURE=false healthcheck: test: ["CMD", "node", "-e", "require('http').get('http://localhost:3000/health', r => process.exit(r.statusCode === 200 ? 0 : 1))"] diff --git a/package.json b/package.json index 0e675ba..0ea55a1 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "oikos", - "version": "0.11.7", + "version": "0.11.8", "description": "Self-hosted family planner - calendar, tasks, shopping, meal planning, budget and more. Private, open-source, no subscription.", "main": "server/index.js", "type": "module",