mirror of
https://github.com/linuxserver/docker-foldingathome.git
synced 2026-02-20 04:22:11 +08:00
rebase to focal, add aarch64, add permission note
This commit is contained in:
parent
70314f2178
commit
cf7196664f
7
.github/workflows/external_trigger.yml
vendored
7
.github/workflows/external_trigger.yml
vendored
@ -36,10 +36,15 @@ jobs:
|
||||
token=$(curl -sX GET \
|
||||
"https://ghcr.io/token?scope=repository%3Alinuxserver%2Ffoldingathome%3Apull" \
|
||||
| jq -r '.token')
|
||||
digest=$(curl -s \
|
||||
multidigest=$(curl -s \
|
||||
--header "Accept: application/vnd.docker.distribution.manifest.v2+json" \
|
||||
--header "Authorization: Bearer ${token}" \
|
||||
"https://ghcr.io/v2/${image}/manifests/${tag}" \
|
||||
| jq -r 'first(.manifests[].digest)')
|
||||
digest=$(curl -s \
|
||||
--header "Accept: application/vnd.docker.distribution.manifest.v2+json" \
|
||||
--header "Authorization: Bearer ${token}" \
|
||||
"https://ghcr.io/v2/${image}/manifests/${multidigest}" \
|
||||
| jq -r '.config.digest')
|
||||
image_info=$(curl -sL \
|
||||
--header "Authorization: Bearer ${token}" \
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
FROM ghcr.io/linuxserver/baseimage-ubuntu:bionic
|
||||
FROM ghcr.io/linuxserver/baseimage-ubuntu:focal
|
||||
|
||||
# set version label
|
||||
ARG BUILD_DATE
|
||||
@ -22,7 +22,7 @@ RUN \
|
||||
ocl-icd-libopencl1 && \
|
||||
ln -s libOpenCL.so.1 /usr/lib/x86_64-linux-gnu/libOpenCL.so && \
|
||||
echo "**** install foldingathome ****" && \
|
||||
download_url=$(curl -sL https://download.foldingathome.org/releases.py?series=${MAJOR_VERSION} | jq -r '.[] | select(.title=="64bit Linux") | .groups[0].files[0].url') && \
|
||||
download_url=$(curl -sL https://download.foldingathome.org/releases.py?series=${MAJOR_VERSION} | jq -r '.[] | select(.title=="64bit Linux") | .groups[].files[].url' | grep "fahclient" | grep "deb" | grep "amd64") && \
|
||||
curl -o \
|
||||
/tmp/fah.deb -L \
|
||||
${download_url} && \
|
||||
|
||||
42
Dockerfile.aarch64
Normal file
42
Dockerfile.aarch64
Normal file
@ -0,0 +1,42 @@
|
||||
FROM ghcr.io/linuxserver/baseimage-ubuntu:arm64v8-focal
|
||||
|
||||
# set version label
|
||||
ARG BUILD_DATE
|
||||
ARG VERSION
|
||||
ARG FOLDINGATHOME_RELEASE
|
||||
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
|
||||
LABEL maintainer="aptalca"
|
||||
|
||||
#Add needed nvidia environment variables for https://github.com/NVIDIA/nvidia-docker
|
||||
ENV NVIDIA_DRIVER_CAPABILITIES="compute,video,utility"
|
||||
|
||||
# global environment settings
|
||||
ENV DEBIAN_FRONTEND="noninteractive" \
|
||||
MAJOR_VERSION=7.6
|
||||
|
||||
RUN \
|
||||
echo "**** install runtime packages ****" && \
|
||||
apt-get update && \
|
||||
apt-get install -y \
|
||||
jq \
|
||||
ocl-icd-libopencl1 && \
|
||||
ln -s libOpenCL.so.1 /usr/lib/aarch64-linux-gnu/libOpenCL.so && \
|
||||
echo "**** install foldingathome ****" && \
|
||||
download_url=$(curl -sL https://download.foldingathome.org/releases.py?series=${MAJOR_VERSION} | jq -r '.[] | select(.title=="64bit Linux") | .groups[].files[].url' | grep "fahclient" | grep "deb" | grep "arm64") && \
|
||||
curl -o \
|
||||
/tmp/fah.deb -L \
|
||||
${download_url} && \
|
||||
dpkg -x /tmp/fah.deb /app && \
|
||||
echo "**** cleanup ****" && \
|
||||
apt-get clean && \
|
||||
rm -rf \
|
||||
/tmp/* \
|
||||
/var/lib/apt/lists/* \
|
||||
/var/tmp/*
|
||||
|
||||
# add local files
|
||||
COPY root/ /
|
||||
|
||||
# ports and volumes
|
||||
EXPOSE 7396
|
||||
VOLUME /config
|
||||
13
Dockerfile.armhf
Normal file
13
Dockerfile.armhf
Normal file
@ -0,0 +1,13 @@
|
||||
FROM ghcr.io/linuxserver/baseimage-ubuntu:focal
|
||||
|
||||
# set version label
|
||||
ARG BUILD_DATE
|
||||
ARG VERSION
|
||||
ARG FOLDINGATHOME_RELEASE
|
||||
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
|
||||
LABEL maintainer="aptalca"
|
||||
|
||||
# add local files
|
||||
COPY root/ /
|
||||
|
||||
# This FoldingAtHome image does not support 32 bit ARM due to lack of 32 bit binaries
|
||||
2
Jenkinsfile
vendored
2
Jenkinsfile
vendored
@ -25,7 +25,7 @@ pipeline {
|
||||
DEV_DOCKERHUB_IMAGE = 'lsiodev/foldingathome'
|
||||
PR_DOCKERHUB_IMAGE = 'lspipepr/foldingathome'
|
||||
DIST_IMAGE = 'ubuntu'
|
||||
MULTIARCH='false'
|
||||
MULTIARCH='true'
|
||||
CI='true'
|
||||
CI_WEB='true'
|
||||
CI_PORT='7396'
|
||||
|
||||
@ -46,7 +46,7 @@ Find us at:
|
||||
|
||||
## Supported Architectures
|
||||
|
||||
We utilise the docker manifest for multi-platform awareness. More information is available from docker [here](https://github.com/docker/distribution/blob/master/docs/spec/manifest-v2-2.md#manifest-list) and our announcement [here](https://blog.linuxserver.io/2019/02/21/the-lsio-pipeline-project/).
|
||||
Our images support multiple architectures such as `x86-64`, `arm64` and `armhf`. We utilise the docker manifest for multi-platform awareness. More information is available from docker [here](https://github.com/docker/distribution/blob/master/docs/spec/manifest-v2-2.md#manifest-list) and our announcement [here](https://blog.linuxserver.io/2019/02/21/the-lsio-pipeline-project/).
|
||||
|
||||
Simply pulling `lscr.io/linuxserver/foldingathome` should retrieve the correct image for your arch, but you can also pull specific arch images via tags.
|
||||
|
||||
@ -55,6 +55,7 @@ The architectures supported by this image are:
|
||||
| Architecture | Tag |
|
||||
| :----: | --- |
|
||||
| x86-64 | latest |
|
||||
| arm64 | arm64v8-latest |
|
||||
|
||||
## Application Setup
|
||||
|
||||
@ -236,6 +237,7 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64
|
||||
|
||||
## Versions
|
||||
|
||||
* **15.01.22:** - Rebase to Ubuntu Focal. Add arm64v8 builds (cpu only). Increase verbosity about gpu driver permission settings.
|
||||
* **09.01.21:** - Add nvidia.icd.
|
||||
* **14.04.20:** - Add Folding@home donation links.
|
||||
* **20.03.20:** - Initial release.
|
||||
|
||||
@ -16,7 +16,7 @@ repo_vars:
|
||||
- DEV_DOCKERHUB_IMAGE = 'lsiodev/foldingathome'
|
||||
- PR_DOCKERHUB_IMAGE = 'lspipepr/foldingathome'
|
||||
- DIST_IMAGE = 'ubuntu'
|
||||
- MULTIARCH='false'
|
||||
- MULTIARCH='true'
|
||||
- CI='true'
|
||||
- CI_WEB='true'
|
||||
- CI_PORT='7396'
|
||||
|
||||
@ -11,6 +11,7 @@ project_blurb_optional_extras_enabled: false
|
||||
# supported architectures
|
||||
available_architectures:
|
||||
- { arch: "{{ arch_x86_64 }}", tag: "latest"}
|
||||
- { arch: "{{ arch_arm64 }}", tag: "arm64v8-latest"}
|
||||
|
||||
# development version
|
||||
development_versions: false
|
||||
@ -66,6 +67,7 @@ app_setup_block: |
|
||||
|
||||
# changelog
|
||||
changelogs:
|
||||
- { date: "15.01.22:", desc: "Rebase to Ubuntu Focal. Add arm64v8 builds (cpu only). Increase verbosity about gpu driver permission settings." }
|
||||
- { date: "09.01.21:", desc: "Add nvidia.icd." }
|
||||
- { date: "14.04.20:", desc: "Add Folding@home donation links." }
|
||||
- { date: "20.03.20:", desc: "Initial release." }
|
||||
|
||||
16
root/etc/cont-init.d/19-armless
Normal file
16
root/etc/cont-init.d/19-armless
Normal file
@ -0,0 +1,16 @@
|
||||
#!/usr/bin/with-contenv bash
|
||||
|
||||
if [[ "$(uname -m)" == "armv7l" ]]; then
|
||||
cat <<-EOF
|
||||
********************************************************
|
||||
********************************************************
|
||||
* *
|
||||
* !!!! *
|
||||
* This FoldingAtHome image does not support *
|
||||
* 32 bit ARM due to lack of 32 bit binaries *
|
||||
* *
|
||||
* *
|
||||
********************************************************
|
||||
********************************************************
|
||||
EOF
|
||||
fi
|
||||
@ -13,5 +13,8 @@ do
|
||||
groupmod -g "$VIDEO_GID" "$VIDEO_NAME"
|
||||
fi
|
||||
usermod -a -G "$VIDEO_NAME" abc
|
||||
if [ $(stat -c '%A' "${i}" | cut -b 5,6) != "rw" ]; then
|
||||
echo -e "**** The device ${i} does not have group read/write permissions, which might prevent hardware transcode from functioning correctly. To fix it, you can run the following on your docker host: ****\nsudo chmod g+rw ${i}\n"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
done
|
||||
|
||||
@ -1,5 +1,9 @@
|
||||
#!/usr/bin/with-contenv bash
|
||||
|
||||
if [[ "$(uname -m)" == "armv7l" ]]; then
|
||||
sleep infinity
|
||||
fi
|
||||
|
||||
cd /config
|
||||
|
||||
exec \
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user