Nick Sweeting edited this page Feb 13, 2019 · 16 revisions

Make sure you have Docker installed and set up:

If you don't already have docker installed, follow the official install instructions for Linux, macOS, or Windows https://docs.docker.com/install/#supported-platforms.

Docker Compose

An example docker-compose.yml config is included in the project root. You can edit it as you see fit, or just run the default setup with archivebox + nginx as it comes out of the box:

cd /path/to/ArchiveBox
mkdir data && chmod 777 data
docker-compose up -d

Then open https://127.0.0.1:8098 to view the archive.

To add new URLs, you can use docker-compose just like the normal ./archive CLI:

# pass links to archive via stdin
echo "https://example.com" | docker-compose exec -T archivebox /bin/archive

# or pass the URL of a feed to import links from
docker-compose exec archivebox /bin/archive https://example.com/some/feed.rss

# or import a file by putting it in your data folder so docker can access it
mv ~/Downloads/bookmarks.html data/sources/bookmarks.html
docker-compose exec archivebox /bin/archive /data/sources/bookmarks.html

To pass in environment variables for configuring ArchiveBox,
edit docker-compose.yml or create a .env file in the project root.

Docker

  1. Fetch and build the ArchiveBox Docker image:
docker build github.com/pirate/ArchiveBox -t archivebox
  1. Create a volume to hold your ArchiveBox data:
docker volume create archivebox-data
  1. Run ArchiveBox with docker run to add links to your archive:

To add a list of pages via URL of a feed.

docker run -v archivebox-data:/data archivebox /bin/archive 'https://example.com/some/rss/feed.xml'

To add a single link or a list of links from a file, pipe them in via stdin.

echo 'https://example.com' | docker run -i -v archivebox-data:/data archivebox /bin/archive
# or
cat bookmarks.html | docker run -i -v archivebox-data:/data archivebox /bin/archive

To pass configuration parameters, you can use the env command.

echo 'https://example.com' | docker run -i -v archivebox-data:/data archivebox env FETCH_SCREENSHOT=False /bin/archive

Or you can create an ArchiveBox.env file (copy from the default etc/ArchiveBox.conf.default) and pass it in like so:

docker run -i -v --env-file=ArchiveBox.env archivebox /bin/archive ...
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.