Skip to content

Commit

Permalink
add archivebox
Browse files Browse the repository at this point in the history
  • Loading branch information
l4rm4nd committed Dec 7, 2023
1 parent 37037ec commit 279a082
Show file tree
Hide file tree
Showing 4 changed files with 152 additions and 0 deletions.
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -133,6 +133,7 @@ docker compose up
- [Ombi](examples/ombi) - Ombi is a tool that enables users to manage requests for movies and TV shows on their Plex server. It provides an easy-to-use interface for users to request new content, leave notes and report issues. Ombi also offers notification and newsletter features, making it easier for server owners to manage user requests and share new content updates.
- [LibrePhotos](examples/librephotos) - A self-hosted open source photo management service, with face recognition, geolocation, and more.
- [Chevereto](examples/chevereto) - Ultimate image sharing software. Create your very own personal image hosting website in just minutes.
- [Archivebox](examples/archivebox) - ArchiveBox is a powerful, self-hosted internet archiving solution to collect, save, and view websites offline.

### Document Management Systems (DMS)
- [Paperless NGX](examples/paperless-ngx) - A community-supported supercharged version of paperless: scan, index and archive all your physical documents.
Expand Down Expand Up @@ -203,6 +204,7 @@ docker compose up
- [Duplicati](examples/duplicati) - Duplicati is a backup client that securely stores encrypted, incremental, compressed remote backups of local files on cloud storage services and remote file servers.
- [Duplicacy](examples/duplicacy) - A lock-free deduplication cloud backup tool.
- [Syncthing](examples/syncthing) - Syncthing is a continuous file synchronization program. It synchronizes files between two or more computers.
- [Archivebox](examples/archivebox) - ArchiveBox is a powerful, self-hosted internet archiving solution to collect, save, and view websites offline.

### Wiki & Knowledge Base
- [Bookstack](examples/bookstack) - BookStack is a free and open-source wiki software aimed for a simple, self-hosted, and easy-to-use platform.
Expand Down
12 changes: 12 additions & 0 deletions examples/archivebox/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# References

- https://github.com/ArchiveBox/ArchiveBox
- https://github.com/ArchiveBox/ArchiveBox/blob/dev/docker-compose.yml

# Notes

Before starting the compose stack, ensure that you have downloaded the sonic configuration file, if you plan on using the sonic container.

Place the config file in the bind volume mount path for sonic.

The default username and password are: archivebox
72 changes: 72 additions & 0 deletions examples/archivebox/docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
version: "3.9"

services:
archivebox:
image: archivebox/archivebox:dev
container_name: archivebox
command: server --quick-init 0.0.0.0:8000
restart: unless-stopped
ports:
- 8000:8000
expose:
- 8000
volumes:
- ${DOCKER_VOLUME_STORAGE:-/mnt/docker-volumes}/archivebox/data:/data # archivebox application data
- ${DOCKER_VOLUME_STORAGE:-/mnt/docker-volumes}/archivebox/crontabs:/var/spool/cron/crontabs # archivebox crontab data for scheduled runs
#- ${DOCKER_VOLUME_STORAGE:-/mnt/docker-volumes}/archivebox/source-code:/app/archivebox # bind mounts the archivebox source code for development
environment:
# see https://docs.archivebox.io/en/master/Configuration.html for more details
- ADMIN_USERNAME=archivebox # your initial username
- ADMIN_PASSWORD=archivebox # your initial password
- ALLOWED_HOSTS=*
- PUBLIC_INDEX=False
- PUBLIC_SNAPSHOTS=False
- PUBLIC_ADD_VIEW=False
- PUID=1000
- PGID=1000
- SEARCH_BACKEND_ENGINE=sonic
- SEARCH_BACKEND_HOST_NAME=sonic
- SEARCH_BACKEND_PASSWORD=deport-silver-showcase-pusher-radiantly
- MEDIA_MAX_SIZE=750m
- TIMEOUT=60
- CHECK_SSL_VALIDITY=False
- SAVE_ARCHIVE_DOT_ORG=False
#networks:
# - proxy
# - archivebox_default
#labels:
# - traefik.enable=true
# - traefik.docker.network=proxy
# - traefik.http.routers.archivebox.rule=Host(`archive.exmple.com`)
# - traefik.http.services.archivebox.loadbalancer.server.port=8000
# # Part for optional traefik middlewares
# - traefik.http.routers.archivebox.middlewares=local-ipwhitelist@file


### Example: To run the Sonic full-text search backend, first download the config file to sonic.cfg
# $ curl -O https://raw.githubusercontent.com/ArchiveBox/ArchiveBox/master/etc/sonic.cfg
# After starting, backfill any existing Snapshots into the full-text index:
# $ docker-compose run archivebox update --index-only

sonic:
image: valeriansaliou/sonic:latest
container_name: archivebox-sonic
expose:
- 1491
environment:
- SEARCH_BACKEND_PASSWORD=deport-silver-showcase-pusher-radiantly
volumes:
# Example: To run the Sonic full-text search backend, first download the config file to sonic.cfg
# curl https://raw.githubusercontent.com/ArchiveBox/ArchiveBox/master/etc/sonic.cfg -o /mnt/docker-volumes/archivebox/sonic/sonic.cfg
# After starting, backfill any existing Snapshots into the full-text index:
# $ docker-compose run archivebox update --index-only
- ${DOCKER_VOLUME_STORAGE:-/mnt/docker-volumes}/archivebox/sonic/sonic.cfg:/etc/sonic.cfg:ro
- ${DOCKER_VOLUME_STORAGE:-/mnt/docker-volumes}/archivebox/sonic/store:/var/lib/sonic/store
#networks:
# - archivebox_default

#networks:
# proxy:
# external: true
# archivebox_default:
# external: false
66 changes: 66 additions & 0 deletions examples/archivebox/sonic.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
# Sonic
# Fast, lightweight and schema-less search backend
# Configuration file
# Example: https://github.com/valeriansaliou/sonic/blob/master/config.cfg


[server]

log_level = "warn"


[channel]

inet = "0.0.0.0:1491"
tcp_timeout = 300

auth_password = "${env.SEARCH_BACKEND_PASSWORD}"

[channel.search]

query_limit_default = 65535
query_limit_maximum = 65535
query_alternates_try = 10

suggest_limit_default = 5
suggest_limit_maximum = 20


[store]

[store.kv]

path = "/var/lib/sonic/store/kv/"

retain_word_objects = 100000

[store.kv.pool]

inactive_after = 1800

[store.kv.database]

flush_after = 900

compress = true
parallelism = 2
max_files = 100
max_compactions = 1
max_flushes = 1
write_buffer = 16384
write_ahead_log = true

[store.fst]

path = "/var/lib/sonic/store/fst/"

[store.fst.pool]

inactive_after = 300

[store.fst.graph]

consolidate_after = 180

max_size = 2048
max_words = 250000

0 comments on commit 279a082

Please sign in to comment.