Linkwarden

Linkwarden is a self-hosted tool for saving and archiving web pages with full content snapshots. It ensures that saved pages remain accessible even if the original source goes offline. You can tag, search and categorize links for easy retrieval. Great for researchers, writers, or digital hoarders, it acts as a private Wayback Machine. It also supports browser extensions for one-click saving. Setup docker-compose.yaml version: "3.5" networks: docker_net: external: true volumes: pgdata: data: services: postgres: image: postgres:16-alpine container_name: linkwarden_db restart: unless-stopped environment: - POSTGRES_PASSWORD=$POSTGRES_PASSWORD volumes: - pgdata:/var/lib/postgresql/data networks: - docker_net linkwarden: image: ghcr.io/linkwarden/linkwarden:latest container_name: linkwarden restart: unless-stopped environment: - DATABASE_URL=postgresql://postgres:$POSTGRES_PASSWORD@postgres:5432/postgres - NEXTAUTH_SECRET=$NEXTAUTH_SECRET - DISABLE_NEW_SSO_USERS=true - NEXT_PUBLIC_DISABLE_REGISTRATION=true - NEXT_PUBLIC_CREDENTIALS_ENABLED=true - NEXTAUTH_URL=$NEXTAUTH_URL - NEXTAUTH_URL_INTERNAL=$NEXTAUTH_URL_INTERNAL ports: - 3100:3000 volumes: - data:/data/data networks: - docker_net depends_on: - postgres Sources website GitHub

October 9, 2024 · Niklas Amundsson

Baserow

Baserow is a no-code database platform that transforms your data into customizable tables and interfaces. It’s an open-source alternative to Airtable, offering collaborative editing, views and plugins. Users can build apps, manage projects, or track inventories without writing SQL. It integrates with various tools and supports REST APIs for automation. Perfect for teams needing a flexible data platform with visual controls. Setup docker-compose.yaml version: '3.4' networks: docker_net: external: true volumes: data: services: baserow: container_name: baserow image: baserow/baserow:latest restart: unless-stopped environment: - BASEROW_PUBLIC_URL=$BASEROW_PUBLIC_URL ports: - 3010:80 - 3020:443 volumes: - data:/baserow/data networks: - docker_net Sources website GitLab

October 7, 2024 · Niklas Amundsson

Docker

Install docker on Proxmox LXC apt-get update apt-get install ca-certificates curl install -m 0755 -d /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc chmod a+r /etc/apt/keyrings/docker.asc echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \ $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \ tee /etc/apt/sources.list.d/docker.list > /dev/null apt-get update shut down lxc and append this to nano /etc/pve/lxc/<cid>.conf in proxmox lxc.apparmor.profile: unconfined lxc.cgroup.devices.allow: a lxc.cap.drop: install docker apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker hello world sudo docker run hello-world Sources website

October 7, 2024 · Niklas Amundsson

Excalidraw

Excalidraw is a collaborative whiteboard app with a hand-drawn style for sketching diagrams, mockups and ideas. It supports real-time collaboration, easy sharing and offline usage. The interface is minimal and distraction-free, making it great for brainstorming sessions. You can export drawings to SVG or PNG and even embed them in documents. It’s a favorite among educators, designers and developers for visual communication. Setup docker-compose.yaml version: "3.8" networks: docker_net: external: true services: excalidraw: image: excalidraw/excalidraw:latest container_name: excalidraw restart: unless-stopped ports: - 3030:80 networks: - docker_net Sources website GitHub

October 7, 2024 · Niklas Amundsson

FreshRSS

FreshRSS is a self-hosted RSS aggregator that helps you collect and read articles from blogs, news sites and more. It supports multiple users, OPML import/export and mobile-friendly viewing. You can categorize feeds, mark articles as read/unread and customize the interface. A great choice for those who prefer owning their news reader data. Setup docker-compose.yaml version: '3' networks: docker_net: external: true volumes: config: services: freshrss: image: lscr.io/linuxserver/freshrss:latest container_name: freshrss restart: unless-stopped environment: - PUID=1000 - PGID=1000 - TZ=Europe/Vienna volumes: - config:/config ports: - 8180:80 networks: - docker_net -> change base url in config.php of fresh rss to your domain ...

October 7, 2024 · Niklas Amundsson

Gitea

Gitea is a lightweight, self-hosted Git service similar to GitHub or GitLab. It offers repository hosting, issue tracking, code reviews and a web-based UI. Designed for simplicity and speed, it’s ideal for teams or individuals who want to manage their own Git servers. It’s easy to deploy and low on system resources. Gitea is perfect for developers wanting version control without cloud dependency. Setup docker-compose.yaml version: '3' networks: docker_net: external: true volumes: gitea: mysql: services: server: image: gitea/gitea:latest container_name: gitea restart: unless-stopped environment: - USER_UID=1000 - USER_GID=1000 - GITEA__database__DB_TYPE=mysql - GITEA__database__HOST=gitea-mysql:3306 - GITEA__database__NAME=gitea - GITEA__database__USER=admin - GITEA__database__PASSWD=$MYSQL_PASSWORD networks: - docker_net volumes: - gitea:/data - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro ports: - 3000:3000 - 2222:22 depends_on: - db db: image: mysql:8 container_name: gitea-mysql restart: unless-stopped environment: - MYSQL_ROOT_PASSWORD=$MYSQL_ROOT_PASSWORD - MYSQL_USER=admin - MYSQL_PASSWORD=$MYSQL_PASSWORD - MYSQL_DATABASE=gitea networks: - docker_net volumes: - mysql:/var/lib/mysql gitea-act-runner: image: gitea/act_runner:latest container_name: gitea-act-runner restart: unless-stopped volumes: - /root/config/act-runner:/config/act-runner - /var/run/docker.sock:/var/run/docker.sock environment: CONFIG_FILE: "/config/act-runner/config.yaml" GITEA_INSTANCE_URL: $GITEA_INSTANCE_URL GITEA_RUNNER_REGISTRATION_TOKEN: $RUNNER_REGISTRATION_TOKEN GITEA_RUNNER_NAME: "main-runner" GITEA_RUNNER_LABELS: "" networks: - docker_net deploy: resources: limits: cpus: '2' memory: 4G Add Gitea runner generate config file: ...

October 7, 2024 · Niklas Amundsson

Homebox

Homebox is a household inventory system that helps you track personal belongings across rooms and locations. You can add items with images, categories and details like purchase date and value. It’s useful for home organization, insurance documentation or moving preparation. The web interface is clean and user-friendly. Great for anyone who wants to maintain a digital record of their possessions. Setup docker-compose.yaml version: "3.4" networks: docker_net: external: true volumes: data: driver: local services: homebox: image: ghcr.io/hay-kot/homebox:latest container_name: homebox restart: unless-stopped environment: - HBOX_LOG_LEVEL=info - HBOX_LOG_FORMAT=text - HBOX_WEB_MAX_UPLOAD_SIZE=10 - HBOX_OPTIONS_ALLOW_REGISTRATION=false volumes: - data:/data/ ports: - 3100:7745 networks: - docker_net Sources website GitHub

October 7, 2024 · Niklas Amundsson

Memos

Memos is a minimalist self-hosted app for taking notes and managing thoughts. It supports Markdown, tagging and a responsive design that works across devices. Notes are organized by creation date and easily searchable. The app prioritizes simplicity and speed, with a clean interface and minimal distractions. It’s perfect for journaling, daily logs, or capturing ideas quickly. Setup docker-compose.yaml version: '3' networks: docker_net: external: true volumes: memos: services: app: image: neosmemo/memos:stable container_name: memos restart: unless-stopped ports: - 5230:5230 volumes: - memos:/var/opt/memos networks: - docker_net Sources website GitHub

October 7, 2024 · Niklas Amundsson

NGINX proxy manager

NGINX Proxy Manager is a web-based UI for managing NGINX reverse proxy configurations. It allows you to easily route traffic to internal services using domain names and configure SSL with Let’s Encrypt. The interface simplifies setup for users who may not be familiar with NGINX’s configuration syntax. It supports access control, redirection and advanced proxy rules. Ideal for self-hosted environments with multiple services. Setup docker-compose.yaml version: '3' networks: docker_net: external: true volumes: data: letsencrypt: services: app: image: jc21/nginx-proxy-manager:latest container_name: nginxpm restart: unless-stopped ports: - 80:80 - 81:81 - 443:443 volumes: - data:/data - letsencrypt:/etc/letsencrypt networks: - docker_net Sources website GitHub

October 7, 2024 · Niklas Amundsson

Nocodb

NocoDB is an open-source no-code platform that converts any SQL database into a smart spreadsheet interface. Users can collaborate, filter and visualize data without writing queries. It supports REST and GraphQL APIs, automation and integration with third-party tools. Great for managing projects, CRM data, or inventory without deep technical knowledge. A strong alternative to paid platforms like Airtable. Setup docker-compose.yaml (mysql) version: '3' networks: docker_net: external: true volumes: db_data: {} nc_data: {} services: nocodb: image: nocodb/nocodb:latest container_name: nocodb restart: unless-stopped depends_on: root_db: condition: service_healthy environment: NC_DB: "mysql2://root_db:3306?u=noco&p=$PASSWORD&d=root_db" ports: - 8080:8080 volumes: - nc_data:/usr/app/data networks: - docker_net root_db: image: mysql:8.3.0 container_name: nocodb_mysql restart: unless-stopped environment: MYSQL_DATABASE: root_db MYSQL_PASSWORD: $PASSWORD MYSQL_ROOT_PASSWORD: $ROOT_PASSWORD MYSQL_USER: noco healthcheck: retries: 10 test: - CMD - mysqladmin - ping - "-h" - localhost timeout: 20s volumes: - db_data:/var/lib/mysql networks: - docker_net docker-compose.yaml (pg) version: '3' networks: docker_net: external: true volumes: db_data: {} nc_data: {} services: nocodb: image: nocodb/nocodb:latest container_name: nocodb restart: unless-stopped depends_on: root_db: condition: service_healthy environment: NC_DB: "pg://root_db:5432?u=postgres&p=$PASSWORD&d=root_db" ports: - 8080:8080 volumes: - nc_data:/usr/app/data networks: - docker_net root_db: image: postgres container_name: nocodb_pg restart: unless-stopped environment: POSTGRES_DB: root_db POSTGRES_PASSWORD: $PASSWORD POSTGRES_USER: postgres healthcheck: interval: 10s retries: 10 test: "pg_isready -U \"$$POSTGRES_USER\" -d \"$$POSTGRES_DB\"" timeout: 2s volumes: - db_data:/var/lib/postgresql/data networks: - docker_net Sources website GitHub

October 7, 2024 · Niklas Amundsson