Merge branch 'master' of github.com-perso:bastienwirtz/homer

This commit is contained in:
Bastien Wirtz 2020-06-19 08:03:55 -07:00
commit 8d7ca88c46
5 changed files with 38 additions and 9 deletions

View File

@ -16,12 +16,15 @@ ENV USER darkhttpd
ENV GROUP darkhttpd
ENV GID 911
ENV UID 911
ENV PORT 8080
RUN addgroup -S ${GROUP} -g ${GID} && adduser -D -S -u ${UID} ${USER} ${GROUP} && \
apk add -U darkhttpd
USER ${USER}
COPY --from=build-stage --chown=${USER}:${GROUP} /app/dist /www/
COPY --chown=${USER}:${GROUP} entrypoint.sh /entrypoint.sh
ENTRYPOINT ["darkhttpd","/www/", "--no-listing"]
USER ${USER}
EXPOSE ${PORT}
VOLUME [ "/www/config.yml", "/www/assets" ]
ENTRYPOINT ["/bin/sh", "/entrypoint.sh"]

View File

@ -25,13 +25,16 @@ ENV USER darkhttpd
ENV GROUP darkhttpd
ENV GID 911
ENV UID 911
ENV PORT 8080
RUN addgroup -S ${GROUP} -g ${GID} && adduser -D -S -u ${UID} ${USER} ${GROUP} && \
apk add -U darkhttpd && \
rm /usr/bin/qemu-arm-static
USER ${USER}
COPY --from=build-stage --chown=${USER}:${GROUP} /app/dist /www/
COPY --chown=${USER}:${GROUP} entrypoint.sh /entrypoint.sh
ENTRYPOINT ["darkhttpd","/www/","--no-listing"]
USER ${USER}
EXPOSE ${PORT}
VOLUME [ "/www/config.yml", "/www/assets" ]
ENTRYPOINT ["/bin/sh", "/entrypoint.sh"]

View File

@ -25,13 +25,16 @@ ENV USER darkhttpd
ENV GROUP darkhttpd
ENV GID 911
ENV UID 911
ENV PORT 8080
RUN addgroup -S ${GROUP} -g ${GID} && adduser -D -S -u ${UID} ${USER} ${GROUP} && \
apk add -U darkhttpd && \
rm /usr/bin/qemu-aarch64-static
USER ${USER}
COPY --from=build-stage --chown=${USER}:${GROUP} /app/dist /www/
COPY --chown=${USER}:${GROUP} entrypoint.sh /entrypoint.sh
ENTRYPOINT ["darkhttpd","/www/","--no-listing"]
USER ${USER}
EXPOSE ${PORT}
VOLUME [ "/www/config.yml", "/www/assets" ]
ENTRYPOINT ["/bin/sh", "/entrypoint.sh"]

View File

@ -110,3 +110,17 @@ docker create \
--restart unless-stopped \
linuxserver/code-server
```
## Get the news headlines in Homer
#### `by @JamiePhonic`
Homer allows you to set a "message" that will appear at the top of the page, however, you can also supply a `url:`.
If the URL you specified returns a JSON object that defines a `title` and `content` item, homer will replace these values from your `config.yml` with the ones in the returned object.
So, using [Node-Red](https://nodered.org/docs/getting-started/) and a quick flow, you can process an RSS feed to replace the message with a news item!
To get started, simply import [this flow](https://flows.nodered.org/flow/4b6406c9a684c26ace0430dd1826e95d) into your Node-Red instance and change the RSS feed in the "Get News RSS Feed" node to one of your choosing!
So far, the flow has been tested with BBC News and Sky News, however it should be easy to modify the flow to work with other RSS feeds if they dont work out of the box!

6
entrypoint.sh Normal file
View File

@ -0,0 +1,6 @@
#!/bin/sh
yes n | cp -i /www/config.yml.dist /www/config.yml
while true; do echo n; done | cp -Ri /app/dist/www/assets /www/assets 2>/dev/null
darkhttpd /www/ --no-listing --port $PORT