feat: add Obsidian CLI API service
Build and Push Docker Container / build-and-push (push) Successful in 4m26s
Build and Push Docker Container / build-and-push (push) Successful in 4m26s
- Add Docker image for the official Obsidian desktop app and CLI. - Start Obsidian headlessly with Xvfb and DBus setup. - Expose a safe structured HTTP command API without shell execution. - Add JWT-based vault, path, and command authorization. - Support single-vault and multi-vault container mounts. - Add TypeScript SDK helpers for Obsidian CLI commands. - Add n8n community node package with Obsidian operations. - Add docs, compose config, tests, and production image workflow.
This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
# Copy to .env and adjust.
|
||||
|
||||
# JWT signing secret. Use the same value to create JWTs with scripts/create_jwt.py.
|
||||
OBSIDIAN_JWT_SECRET=change-this-long-random-secret
|
||||
|
||||
# Host path to your default/single Obsidian vault.
|
||||
# Examples:
|
||||
# OBSIDIAN_VAULT_PATH=/home/daniel/Documents/Obsidian/MainVault
|
||||
# OBSIDIAN_VAULT_PATH=/mnt/storage/ObsidianVault
|
||||
OBSIDIAN_VAULT_PATH=./vault
|
||||
|
||||
# Optional: mount a parent folder containing additional vaults at /vaults.
|
||||
# Then register all vaults by name using container paths.
|
||||
# Example:
|
||||
# OBSIDIAN_VAULTS_ROOT=/home/daniel/Documents/Obsidian
|
||||
# OBSIDIAN_VAULTS=main=/vault,work=/vaults/Work,personal=/vaults/Personal
|
||||
OBSIDIAN_VAULTS_ROOT=./vaults
|
||||
OBSIDIAN_VAULTS=
|
||||
|
||||
# Host port for the HTTP API.
|
||||
OBSIDIAN_API_PORT=8080
|
||||
|
||||
# Official Obsidian desktop/CLI version installed in the image.
|
||||
OBSIDIAN_VERSION=1.12.7
|
||||
|
||||
# Official CLI binary inside the container.
|
||||
OBSIDIAN_CLI_BIN=obsidian
|
||||
|
||||
# Seconds to wait for the desktop app to expose the official CLI socket.
|
||||
OBSIDIAN_STARTUP_TIMEOUT=60
|
||||
|
||||
# Command timeout limits in seconds.
|
||||
COMMAND_TIMEOUT=60
|
||||
MAX_COMMAND_TIMEOUT=300
|
||||
Reference in New Issue
Block a user