All Projects → ArchiveBox → good-karma-kit

ArchiveBox / good-karma-kit

Licence: MIT license
😇 A Docker Compose bundle to run on servers with spare CPU, RAM, disk, and bandwidth to help the world. Includes Tor, ArchiveWarrior, BOINC, and more...

Projects that are alternatives of or similar to good-karma-kit

denarius
Denarius [$D] is a PoW/PoS Hybrid Cryptocurrency with Tribus a new PoW Hashing Algo built specifically for D, one of a kind hybrid masternodes called Fortuna Stakes, atomic swaps, staking, mining, IPFS, optional Native Tor and I2P, and much more!
Stars: ✭ 105 (-55.88%)
Mutual labels:  ipfs, tor, i2p
Archivebox
🗃 Open source self-hosted web archiving. Takes URLs/browser history/bookmarks/Pocket/Pinboard/etc., saves HTML, JS, PDFs, media, and more...
Stars: ✭ 12,383 (+5102.94%)
Mutual labels:  internet-archiving, archivebox
Awesome Distributed Systems
Awesome list of distributed systems resources
Stars: ✭ 512 (+115.13%)
Mutual labels:  distributed-computing, distributed-storage
meanOs
Mean Operating System - The first decentralized, artificially intelligent, MEAN.js stack, operating system. Mean OS is the only operating system hosted anonymous using a P2P network and a suite of non-standard in-browser delivery mechanisms. Mean OS proudly supports Brave and Tor, be free!
Stars: ✭ 62 (-73.95%)
Mutual labels:  ipfs, tor
readability-extractor
Javascript/Node wrapper around Mozilla's Readability library so that ArchiveBox can call it as a oneshot CLI command to extract each page's article text.
Stars: ✭ 18 (-92.44%)
Mutual labels:  internet-archiving, archivebox
go-libp2p-tor-transport
🚧 WIP: tor transport for libp2p
Stars: ✭ 41 (-82.77%)
Mutual labels:  ipfs, tor
Moosefs
MooseFS – Open Source, Petabyte, Fault-Tolerant, Highly Performing, Scalable Network Distributed File System (Software-Defined Storage)
Stars: ✭ 1,025 (+330.67%)
Mutual labels:  distributed-computing, distributed-storage
prometheus-spec
Censorship-resistant trustless protocols for smart contract, generic & high-load computing & machine learning on top of Bitcoin
Stars: ✭ 24 (-89.92%)
Mutual labels:  ipfs, distributed-computing
ipns-link
Expose local http-server (web-app) through IPNS
Stars: ✭ 18 (-92.44%)
Mutual labels:  ipfs, tor
tor-dht-poc
Anonymous DHT Accessible from Executable or Tor-Enabled Browser
Stars: ✭ 40 (-83.19%)
Mutual labels:  ipfs, tor
go-ipfs-plugin-i2p-gateway
A plugin for presenting an IPFS gateway over i2p
Stars: ✭ 14 (-94.12%)
Mutual labels:  ipfs, i2p
fahclient
Dockerized Folding@home client with NVIDIA GPU support to help battle COVID-19
Stars: ✭ 38 (-84.03%)
Mutual labels:  distributed-computing, foldingathome
marsjs
Label images from Unsplash in browser - using MobileNet on Tensorflow.Js
Stars: ✭ 53 (-77.73%)
Mutual labels:  distributed-computing
deplayer
Decentralized mediaplayer which runs entirely in the browser.
Stars: ✭ 14 (-94.12%)
Mutual labels:  ipfs
high-assurance-legacy
Legacy code connected to the high-assurance implementation of the Ouroboros protocol family
Stars: ✭ 81 (-65.97%)
Mutual labels:  distributed-computing
nebula
A distributed block-based data storage and compute engine
Stars: ✭ 127 (-46.64%)
Mutual labels:  distributed-computing
tevere
🏞 Decentralized DB over IPFS
Stars: ✭ 57 (-76.05%)
Mutual labels:  ipfs
I2P-in-Private-Browsing-Mode-Firefox
I2P in Private Browsing mode for Firefox, built using Webextensions and Contextual Identities
Stars: ✭ 31 (-86.97%)
Mutual labels:  i2p
gotor
This program provides efficient web scraping services for Tor and non-Tor sites. The program has both a CLI and REST API.
Stars: ✭ 97 (-59.24%)
Mutual labels:  tor
ipfs-chat
Real-time P2P messenger using go-ipfs pubsub. TUI. End-to-end encrypted texting & file-sharing. NAT traversal.
Stars: ✭ 84 (-64.71%)
Mutual labels:  ipfs

The Good Karma Kit


A Docker Compose project to run on servers with spare CPU, disk, and bandwidth.
Help the world by contributing your unused computing power to good causes.

Quickstart

  1. Download docker-compose.yml into an empty directory (or clone this repo)
  2. Edit the docker-compose.yml file to fill in config vars, tune resource limits, or comment out containers you don't want to run
  3. Start the containers with docker-compose up
  4. Finish setting up some projects through their respective web dashboards exposed on localhost (see below)
curl -O https://raw.githubusercontent.com/ArchiveBox/good-karma-kit/main/docker-compose.yml
# edit docker-compose.yml to fill in config, tune limits, or disable containers

mkdir -p data
docker-compose up

Next steps: Check the status of everything using htop

docker-compose ps
htop

Or use the web dashboards / leaderboards for each service listed below.

Overview

Have some space computing power and want to donate it to a good cause? How about 10+ good causes all at once?

♻️ put an under-utilized system to good use
🚲 use as much or as little CPU/RAM/DISK as you want
100% more soul warming than mining
📈 geek out over your CPU/disk/bandwidth stats on the leaderboards

This is a collection of containers that all contribute to public-good projects:

  • networks: Tor, i2p
  • computing: boinc, foldingathome
  • archiving: archivewarrior, zimfarm, kiwix, archivebox, pywb
  • storage: ipfs, storj, sia, transmission

This v1 list was started by the ArchiveBox project, but it's open to contributions.

We've added the 501(c)/non-profit status of each cause below, so you can filter out for-profit ones if you don't want to participate in those (e.g. Storj/IPFS/etc.).


Caveats

The nature of most of these containers is that you're contributing resources to the public or to specific causes running on the public internet. Unless otherwise specified or restricted to 127.0.0.1 in the compose file, all ports should be made available to the public internet. Make sure you understand the risks involved with exposing your machine to WAN. It may be worth running this in an isolated VM on an isolated subnet if it's on your home or corporate network.

Two optional containers need access to /var/run/docker.sock: watchtower (uses it to update the other containers), and zimfarm (uses it to fork worker containers for its sub-tasks). Make sure to update the containers yourself semi-regularly if you disable the watchtower.

Not all the containers are not-for-profit, some either reward you with cryptocurrency, or are affiliated with for-profit entities. Each container is marked below with its non-profit/for-profit status.

If there are too many containers for your liking, the top-3 high-impact and easy-to-run ones are:

  • ⭐️ archivewarrior
  • ⭐️ boinc
  • ⭐️ tor

Contents



Autoupdater


watchtower

image: containrrr/watchtower

Automatically update & restart docker containers when they have new versions available. (open source helper container)

(commented out by default, but highly recommended to enable it by uncommenting)

https://containrrr.dev/watchtower/
https://github.com/containrrr/watchtower

Notes: needs access docker.sock to work, but can be disabled if you regularly udpate the containers yourself by hand




Distributed networking projects


tor ⭐️

image: thetorproject/obfs4-bridge:latest

Run a relay node for the Tor onion routing network that helps people use the internet with as much privacy as possible. (501(c)(3) US nonprofit)

https://www.torproject.org/
https://hub.docker.com/r/thetorproject/obfs4-bridge

Notes: Does not run a guard/exit node, only a middle relay node


i2p

image: divax/i2p:i2p-tor

Run a relay node for the i2p routing network (similar to Tor). (501(c)(3) US nonprofit)

https://geti2p.net/en/
https://hub.docker.com/r/divax/i2p




Distributed computing projects


boinc ⭐️

image: ghcr.io/linuxserver/boinc

Help contribute CPU and GPU power to a wide variety of scientific research projects, including protein folding, alien signal detection, and more! (operated not-for-profit by UC Berkeley and funded by the NSF)

https://boinc.berkeley.edu/
https://hub.docker.com/r/linuxserver/boinc

Notes: if you have a GPU, it will help computations greatly, please uncomment the /dev/dri line.


foldingathome

image: ghcr.io/linuxserver/foldingathome

Help contribute CPU power to solve protein folding problems in bioscience, crucial to the development of vacienes and our understanding of molecular biology and mechanics. (operated by a research group at Washington University in Saint Louis, a 501(c)(3) non-profit)

https://foldingathome.org/
https://hub.docker.com/r/linuxserver/foldingathome




Internet Archiving projects


archivewarrior ⭐️

image: atdr.meo.ws/archiveteam/warrior-dockerfile:latest or archiveteam/warrior-dockerfile

Help contribute CPU and bandwidth to archive parts of the internet automatically before they go down. Has helped save large swaths of the internet from going dark forever by adding them to Archive.org. (operated by an open-source collective, not-for-profit)

https://warrior.archiveteam.org/
https://hub.docker.com/r/archiveteam/warrior-dockerfile/


zimfarm

image: openzim/zimfarm-worker-manager

Help contribute CPU and bandwidth to archive large content collections for offline use in areas with limited internet. Helps many communities access things like Wikipedia, Project Gutenberg, and more. (operated by the Swiss non-profit Kiwix/OpenZIM)

https://github.com/openzim/zimfarm
https://hub.docker.com/r/openzim/zimfarm-worker-manager

Notes: this one requires a static IP and >1TB of monthly network transfer available! You must contact Kiwix to get your worker set up, and get your static IP whitelisted.


kiwix

image: kiwix/kiwix-serve:latest

Help contribute bandwidth and disk to serve large content collections to users in areas with limited or censored internet. This is the server for the content that zimfarm archives. (operated by the Swiss non-profit Kiwix/OpenZIM)

https://www.kiwix.org/en/
https://hub.docker.com/r/kiwix/kiwix-serve

Notes: this one requires you download some ZIM archives to serve into ./data/kiwix, get those from here: https://wiki.kiwix.org/wiki/Content_in_all_languages


archivebox

image: archivebox/archivebox:latest

Use ArchiveBox as a tool to archive sites you care about for offline visiting or rehosting after they go down. (open source project, not-for-profit)

https://archivebox.io
https://hub.docker.com/r/archivebox/archivebox/

Notes: this one is empty by default, add some sites to archive or crawl regulary using the web UI or CLI.


pywb

image: webrecorder/pywb:latest

Use PYWB as a tool to archive sites you care about for offline visiting or rehosting after they go down. (open source project, not-for-profit, affiliated with Rhizome/Webrecorder)

https://github.com/webrecorder/pywb
https://hub.docker.com/r/webrecorder/pywb

Notes: this one is empty by default, add some sites to archive or crawl regulary using the web UI or CLI.




Distribued storage projects

(these serve assets to the public,


ipfs

image: ipfs/go-ipfs:latest

Run a storage node (free/not-for-profit) on the IPFS distributed storage network and pin files you care about to help serve them to others. (operated by Protocol Labs Inc., a for-profit 💰 US company)

https://ipfs.io
https://hub.docker.com/r/ipfs/go-ipfs


storj

image: storjlabs/storagenode:latest

Run a storage node (for profit) on the Storj distributed storage network, automatically contribute your storage space and bandwidth and earn cryptocurrency in return. (operated by Storj Labs Inc., a for-profit 💰 US company)

https://www.storj.io/
https://hub.docker.com/r/storjlabs/storagenode

Notes: 💰 This one (optionally) earns you money for your storage. Set the WALLET to your address if you want payouts.


sia

(OPTIONAL, commented out by default)

image: nebulouslabs/sia

Run a storage node (free/not-for-profit) on the Sia distributed storage network. (technically operated by Sia Foundation, a 501(c)(3) US nonprofit, but helps serve Skynet, their for-profit 💰 entity)

https://sia.tech/
https://hub.docker.com/r/nebulouslabs/sia


Transmission

image: linuxserver/transmission

Seed files to the public via BitTorrent (e.g. linux ISOs, Archive.org collections, etc.). This starts empty by default, you have to add content yourself.

image: linuxserver/transmission
ports:
    - 127.0.0.1:9091:9091
    - 0.0.0.0:51413:51413
    - 0.0.0.0:51413:51413/udp
environment:
    - USER=squash
    - PASS=NfC6r47FA8J2K
volumes:
    - ./data/transmission/files:/data
    - ./data/transmission:/config

Notes: some networks don't like BitTorrent traffic, make sure your provider allows it.




Contribute

Contributions, corrections, and documentation improvements are welcome! Please open an issue or PR to suggest a fix or a new container addition.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].