json2collectdmqtt: create new Docker image
This commit is contained in:
parent
d9e8ad00b6
commit
fdc4c64f40
4 changed files with 32 additions and 0 deletions
|
@ -74,6 +74,7 @@ Image | Purpose
|
||||||
`imap-download` | Fetchmail, procmail, inotifywait, and munpack working together to download emails and extract attachments. The provided fetchmailrc must be owned by `10000:10000`.
|
`imap-download` | Fetchmail, procmail, inotifywait, and munpack working together to download emails and extract attachments. The provided fetchmailrc must be owned by `10000:10000`.
|
||||||
`archivebox` | Dockerised [ArchiveBox](https://archivebox.io/)
|
`archivebox` | Dockerised [ArchiveBox](https://archivebox.io/)
|
||||||
`tinyproxy` | Dockerised [tinyproxy](https://tinyproxy.github.io/) - config file should be mounted read-only to `/srv/tinyproxy.conf`
|
`tinyproxy` | Dockerised [tinyproxy](https://tinyproxy.github.io/) - config file should be mounted read-only to `/srv/tinyproxy.conf`
|
||||||
|
`json2collectdmqtt` | Dockerised [json2collectdmqtt](https://github.com/sbrl/json2collectdmqtt) - `KEY=value` environment file should be mounted to `/srv/env`
|
||||||
|
|
||||||
|
|
||||||
## Docker container UID/GID map
|
## Docker container UID/GID map
|
||||||
|
@ -92,6 +93,8 @@ UID | GID | Container | Notes
|
||||||
0 | 0 | imap-download | Uses fetchmail to download emails and extract attachments. The provided fetchmailrc must be owned by `10000:10000`, and be chmodded to `0700`.
|
0 | 0 | imap-download | Uses fetchmail to download emails and extract attachments. The provided fetchmailrc must be owned by `10000:10000`, and be chmodded to `0700`.
|
||||||
10200 | 10200 | archivebox |
|
10200 | 10200 | archivebox |
|
||||||
10300 | 10300 | tinyproxy |
|
10300 | 10300 | tinyproxy |
|
||||||
|
10400 | 10400 | json2collectdmqtt | `chown` environment file to `10400:10400`, as it's loaded by a startup shell script inside the container
|
||||||
|
|
||||||
|
|
||||||
## Development Notes
|
## Development Notes
|
||||||
|
|
||||||
|
|
15
images/json2collectdmqtt/Dockerfile
Normal file
15
images/json2collectdmqtt/Dockerfile
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
ARG REPO_LOCATION
|
||||||
|
# ARG BASE_VERSION
|
||||||
|
|
||||||
|
FROM ${REPO_LOCATION}minideb-node
|
||||||
|
|
||||||
|
RUN npm install --global json2collectdmqtt && rm -rf "$(npm get cache)";
|
||||||
|
COPY ./run.sh /usr/local/bin/run.sh
|
||||||
|
|
||||||
|
VOLUME [ "/srv" ]
|
||||||
|
|
||||||
|
USER 80:80
|
||||||
|
|
||||||
|
ENV NODE_ENV production
|
||||||
|
WORKDIR /srv
|
||||||
|
ENTRYPOINT [ "/usr/local/bin/run.sh" ]
|
13
images/json2collectdmqtt/run.sh
Executable file
13
images/json2collectdmqtt/run.sh
Executable file
|
@ -0,0 +1,13 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# Username / password are best stored in an env file rather than a Nomad job file
|
||||||
|
if [[ -r "/srv/env" ]]; then
|
||||||
|
#shellcheck disable=SC2046
|
||||||
|
export $(xargs </srv/env);
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -n "${MQTT_SERVER}" ]]; then
|
||||||
|
JSON2COLLECTDMQTT_ARGS="${JSON2COLLECTDMQTT_ARGS} --server ${MQTT_SERVER}";
|
||||||
|
fi
|
||||||
|
|
||||||
|
exec json2collectdmqtt
|
1
images/json2collectdmqtt/type.txt
Normal file
1
images/json2collectdmqtt/type.txt
Normal file
|
@ -0,0 +1 @@
|
||||||
|
docker
|
Loading…
Reference in a new issue