diff --git a/CloudronManifest.json b/CloudronManifest.json index 289c0a2..59c1751 100644 --- a/CloudronManifest.json +++ b/CloudronManifest.json @@ -3,7 +3,7 @@ "title": "RSSHub", "id": "com.hwarf.rsshub", "version": "1.0.0", - "runtimeDirs": [ "/root/.npm" ], + "runtimeDirs": [ "/home/cloudron/.npm" ], "healthCheckPath": "/", "httpPort": 1200, "addons": { diff --git a/Dockerfile b/Dockerfile index 68e934c..69ac611 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1 +1,15 @@ -FROM diygod/rsshub +FROM cloudron/base:4.0.0@sha256:31b195ed0662bdb06a6e8a5ddbedb6f191ce92e8bee04c03fb02dd4e9d0286df + +RUN mkdir -p /app/code /app/data +WORKDIR /app/code/ + +RUN git clone https://git.hwarf.com/jglemza/RSSHub.git /app/code +RUN npm install --omit=dev + +COPY rsshub.env start.sh /app/pkg/ +RUN touch /app/data/.env && \ + ln -s /app/data/.env /app/code/.env && \ + mkdir /home/cloudron/.npm && \ + chown -R cloudron:cloudron /home/cloudron/.npm + +CMD [ "/app/pkg/start.sh" ] \ No newline at end of file diff --git a/rsshub.env b/rsshub.env new file mode 100644 index 0000000..0554197 --- /dev/null +++ b/rsshub.env @@ -0,0 +1,4 @@ +# A full list of configuration variables can be found at: +# https://docs.rsshub.app/en/install/#configuration + +PORT=1200 \ No newline at end of file diff --git a/start.sh b/start.sh new file mode 100755 index 0000000..605e6ed --- /dev/null +++ b/start.sh @@ -0,0 +1,8 @@ +#!/bin/bash +set -ex + +cp -n /app/pkg/rsshub.env /app/data/.env + +echo "Start RSSHub" +chown -R cloudron:cloudron /app/data +exec /usr/local/bin/gosu cloudron:cloudron npm start --prefix /app/code \ No newline at end of file