1
0
mirror of https://github.com/funkypenguin/geek-cookbook/ synced 2025-12-13 01:36:23 +00:00
Files
geek-cookbook/docs/recipes/archivebox.md
David Young cf44acda27 Add recipe for searxng (#274)
* Add recipe for searxng

Signed-off-by: David Young <davidy@funkypenguin.co.nz>

* Fussy linter

Signed-off-by: David Young <davidy@funkypenguin.co.nz>

---------

Signed-off-by: David Young <davidy@funkypenguin.co.nz>
2023-03-10 17:47:52 +00:00

2.5 KiB

title, description, recipe
title description recipe
Run Archivebox on Docker Swarm Archivebox - bookmark manager for your self-hosted stack Archivebox

Archivebox

ArchiveBox is a self-hosted internet archiving solution to collect and save sites you wish to view offline.

Archivebox Screenshot{ loading=lazy }

Features include:

  • Uses standard formats such as HTML, JSON, PDF, PNG
  • Ability to autosave to archive.org
  • Supports Scheduled importing
  • Supports Realtime importing

{{ page.meta.recipe }} Requirements

--8<-- "recipe-standard-ingredients.md"

Preparation

Setup data locations

First, we create a directory to hold the data which archivebox will store:

mkdir /var/data/archivebox
mkdir /var/data/config/archivebox
cd /var/data/config/archivebox

Create docker-compose.yml

Create a docker swarm config file in docker-compose syntax (v3), something like the example below:

--8<-- "premix-cta.md"

version: '3.2'

services:
    archivebox:
        image: archivebox/archivebox
        command: server --quick-init 0.0.0.0:8000
        ports:
            - 8000:8000
        networks:
          - traefik_public
        environment:
            - PUID=1000
            - PGID=1000
            - TZ=Pacific/Auckland
            - USE_COLOR=True
            - SHOW_PROGRESS=False
        deploy:
          labels:
            # traefik common
            - traefik.enable=true
            - traefik.docker.network=traefik_public
            # traefikv1
            - traefik.frontend.rule=Host:archive.example.com
            - traefik.port=8000     
            # traefikv2
            - "traefik.http.routers.archive.rule=Host(`archive.example.com`)"
            - "traefik.http.routers.archive.entrypoints=https"
            - "traefik.http.services.archive.loadbalancer.server.port=8000" 
        volumes:
          - /var/data/archivebox:/data


networks:
  traefik_public:
    external: true

Initalizing Archivebox

Once you have created the docker file you will need to run the following command to configure archivebox and create an account. docker run -v /var/data/archivebox:/data -it archivebox/archivebox init --setup

Serving

Launch Archivebox!

Launch the Archivebox stack by running docker stack deploy archivebox -c <path -to-docker-compose.yml>

--8<-- "recipe-footer.md"