diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..a0fc33f --- /dev/null +++ b/.dockerignore @@ -0,0 +1,4 @@ +*.swp +.git +.vscode +examples diff --git a/Dockerfile.bookworm b/Dockerfile.bookworm new file mode 100644 index 0000000..d6d1640 --- /dev/null +++ b/Dockerfile.bookworm @@ -0,0 +1,20 @@ +# https://github.com/Chocobozzz/PeerTube/blob/v6.0.3/support/docker/production/Dockerfile.bookworm +FROM chocobozzz/peertube:v6.0.3-bookworm + +WORKDIR /home/peertube/ + +ENV HOME=/home/peertube + +# https://docs.joinpeertube.org/maintain/tools#peertube-runner +RUN npm install -g @peertube/peertube-runner + +# peertube +USER 999 + +VOLUME [ "/home/peertube/.config/peertube-runner-nodejs/" ] +VOLUME [ "/home/peertube/.cache/peertube-runner-nodejs/" ] +VOLUME [ "/home/peertube/.local/share/peertube-runner-nodejs/" ] + +ENTRYPOINT [ ] + +CMD [ "peertube-runner" ] diff --git a/Dockerfile.bullseye b/Dockerfile.bullseye new file mode 100644 index 0000000..ab52976 --- /dev/null +++ b/Dockerfile.bullseye @@ -0,0 +1,20 @@ +# https://github.com/Chocobozzz/PeerTube/blob/v5.2.1/support/docker/production/Dockerfile.bullseye +FROM chocobozzz/peertube:v5.2.1-bullseye + +WORKDIR /home/peertube/ + +ENV HOME=/home/peertube + +# https://docs.joinpeertube.org/maintain/tools#peertube-runner +RUN npm install -g @peertube/peertube-runner + +# peertube +USER 999 + +VOLUME [ "/home/peertube/.config/peertube-runner-nodejs/" ] +VOLUME [ "/home/peertube/.cache/peertube-runner-nodejs/" ] +VOLUME [ "/home/peertube/.local/share/peertube-runner-nodejs/" ] + +ENTRYPOINT [ ] + +CMD [ "peertube-runner" ] diff --git a/README.md b/README.md index 6aea611..2e82e8e 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,39 @@ -# peertube-runner -Containerized PeerTube runner for remote execution of transcoding jobs in Kubernetes +# `owntube/peertube-runner` + +Containerized [@peertube/peertube-runner](https://www.npmjs.com/package/@peertube/peertube-runner) for remote execution of transcoding jobs in Kubernetes. + +## `owntube/peertube-runner:v521` PeerTube v5.2.1 Runner + +Build the container image: + +```bash +docker build -f Dockerfile.bullseye -t owntube/peertube-runner:v521 . +``` + +Test running the PeerTube runner server: + +```bash +docker run -it --rm -u root --name v521-runner-server \ + -v $PWD/dot-local:/home/peertube/.local/share/peertube-runner-nodejs \ + -v $PWD/dot-config:/home/peertube/.config/peertube-runner-nodejs \ + -v $PWD/dot-cache:/home/peertube/.cache/peertube-runner-nodejs \ + owntube/peertube-runner:v521 peertube-runner server +``` + +## `owntube/peertube-runner:v603` PeerTube v6.0.3 Runner + +Build the container image: + +```bash +docker build -f Dockerfile.bookworm -t owntube/peertube-runner:v603 . +``` + +Test running the PeerTube runner server: + +```bash +docker run -it --rm -u root --name v603-runner-server \ + -v $PWD/dot-local:/home/peertube/.local/share/peertube-runner-nodejs \ + -v $PWD/dot-config:/home/peertube/.config/peertube-runner-nodejs \ + -v $PWD/dot-cache:/home/peertube/.cache/peertube-runner-nodejs \ + owntube/peertube-runner:v603 peertube-runner server +```