Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/stefancrain/folding-at-home
A Folding@Home Docker container with GPU support
https://github.com/stefancrain/folding-at-home
alzheimers-disease amd64 covid-19 cpu docker folding-at-home foldingathome gpu-support huntingtons-disease nvidia-docker opencl parkinsons-disease
Last synced: about 1 month ago
JSON representation
A Folding@Home Docker container with GPU support
- Host: GitHub
- URL: https://github.com/stefancrain/folding-at-home
- Owner: stefancrain
- License: mit
- Created: 2020-03-17T13:39:07.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2024-04-26T00:51:40.000Z (7 months ago)
- Last Synced: 2024-04-26T01:43:59.645Z (7 months ago)
- Topics: alzheimers-disease, amd64, covid-19, cpu, docker, folding-at-home, foldingathome, gpu-support, huntingtons-disease, nvidia-docker, opencl, parkinsons-disease
- Language: Dockerfile
- Homepage:
- Size: 72.3 KB
- Stars: 38
- Watchers: 2
- Forks: 8
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Running Folding@Home in docker with GPU support
![build](https://github.com/stefancrain/folding-at-home/workflows/folding-at-home/badge.svg)
![auto-update](https://github.com/stefancrain/folding-at-home/workflows/folding-at-home/badge.svg?event=schedule)![GitHub Tag](https://badgen.net/github/tag/stefancrain/folding-at-home?icon=github&label=version)
![GitHub commit activity](https://badgen.net/github/last-commit/stefancrain/folding-at-home?icon=github&label=updated)
![Docker Layers](https://badgen.net/docker/pulls/stefancrain/folding-at-home?icon=docker&label=pulls)
![Docker Size](https://badgen.net/docker/size/stefancrain/folding-at-home/latest/amd64?icon=docker&label=latest)
![Docker Stars](https://badgen.net/docker/stars/stefancrain/folding-at-home?icon=docker)## Fighting COVID-19, and other diseases
TL;DR: **Folding at home** is simulating the dynamics of COVID-19 proteins to hunt for new therapeutic opportunities. This container distributes the binary in a hope to increase installs.
### FAH links
- [[FAQ] SARS-CoV-2 (COVID-19) projects and FAH](https://foldingforum.org/viewtopic.php?f=24&t=32463)
- [Coronavirus, what were doing and how you can help in simple terms](https://foldingathome.org/2020/03/15/coronavirus-what-were-doing-and-how-you-can-help-in-simple-terms/)
- [Live footage of our scientists working hard to make more work units available](https://twitter.com/foldingathome/status/1239992073664765953)## Unofficial, Unsupported
I'm not a member of the F@H team. I actively work on issues here, and have set this up to [automatically update](.github/workflows/schedule.yml) in my absence. This image is published to [stefancrain/folding-at-home](https://hub.docker.com/repository/docker/stefancrain/folding-at-home) and automatically updated as the folding-at-home team releases changes.
## Prerequisites
- CPU: amd64
- GPU: Nvidia and AMD
- [A F@H supported GPU](https://apps.foldingathome.org/GPUs.txt)
- [NVIDIA/nvidia-docker](https://github.com/NVIDIA/nvidia-docker) - A [gist](https://gist.github.com/stefancrain/0b4fe2ae29a15427a5d7040a9f7cdb5c) from my headless ubuntu 18.04 setup
- TODO: add AMD gist## Deployment
### CLI docker run
```bash
docker run \
--name folding-at-home \
--gpus all \
-p 7396:7396 \
stefancrain/folding-at-home:latest \
--user=YOUR_NAME_HERE \
--team=229500 \
--power=full \
--gpu-usage=100 \
--cpu-usage=100
```### Docker-compose
Docker-compose GPU access is currently blocked by upstream issue in compose [#6691](https://github.com/docker/compose/issues/6691), tracked in [#4](https://github.com/stefancrain/folding-at-home/issues/4). **This will work for CPU folding only** :
```bash
---
version: "3"
services:
folding-at-home:
image: stefancrain/folding-at-home:latest
container_name: folding-at-home
ports:
- 7396:7396
restart: unless-stopped
command: ["--user=YOUR_NAME_HERE","--team=229500","--power=full","--gpu=false","--cpu-usage=100"]
```### K8s
I don't currently have a K8s cluster at home, so I'm including examples of users running this image in their config.
- [onedr0p/k3s-gitops](https://github.com/onedr0p/k3s-gitops/blob/fdc4be556833d3fcc4849b54cc248eb1a9c89dcc/deployments/default/folding-at-home/folding-at-home.yaml) works great but /u/onedrop has no approved GPUs to test
- [coreweave/fah-docker](https://github.com/coreweave/fah-docker/blob/master/kubernetes/folding-at-home-deployment.yaml) (a different container) but the config to support GPU enabled docker container, untested (by me)TODO: create k8s cluster and test!
## Troubleshooting and FAQ
### nvidia-docker
> Is your `docker run` aborting with error `could not select device driver "" with capabilities: [[gpu]]`?
Please be sure you installed `nvidia-docker` as indicated in the 'Prerequisites' section above.
### Nvidia
> Does docker see all GPUs?
```bash
docker run \
--rm \
--gpus all \
--entrypoint="nvidia-smi" \
stefancrain/folding-at-home:latest
```### FAHClient
> What are the FAHClient defaults set for this container?
- **User** : Anonymous
- **Team** : [Homelab - 229500](https://stats.foldingathome.org/team/229500) [_who?_](https://www.reddit.com/r/homelab/comments/fkyr1i/foldinghome_homelab_team_against_covid19/)
- **Power** : full (use full CPU)
- **gpu-usage** : 100%
- **cpu-usage** : 100%
- **web-allow/allow** : allow web traffic to port 7396
- **smp** : [support smp](https://foldingathome.org/2008/06/15/what-does-the-smp-core-do/)> How do I review my FAHClient config?
```bash
docker run \
--rm \
--gpus all \
--entrypoint="/usr/bin/FAHClient" \
stefancrain/folding-at-home:latest \
--info
```> How can I see additional config options?
```bash
docker run \
--rm \
--entrypoint="/usr/bin/FAHClient" \
stefancrain/folding-at-home:latest \
--help
```> How can I see my progress?
By default the container is open to local network traffic on [127.0.0.1:7396](http://127.0.0.1:7396/)