Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 6 additions & 4 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,9 @@ ENV PLUGIN_HTTP_HOST=172.19.0.8:503
WORKDIR /go/src/app
COPY --from=builder /go/src/app .
EXPOSE 9999
RUN chmod +x ThingsPanel-Go
RUN pwd
RUN ls -lrt
ENTRYPOINT [ "./ThingsPanel-Go" ]
RUN apk --update add curl bash && 、
mkdir /docker-entrypoint.d && \
chmod +x ThingsPanel-Go docker-entrypoint.sh
// 增加预处理过程,方便后期调试,例如独立运行本镜像查看环境等
ENTRYPOINT ["/go/src/app/docker-entrypoint.sh"]
CMD [ "./ThingsPanel-Go" ]
34 changes: 34 additions & 0 deletions docker-entrypoint.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
#!/bin/bash
# vim:sw=4:ts=4:et

set -e

env

if [[ "$1" =~ "ThingsPanel-Go" ]]; then
if /usr/bin/find "/docker-entrypoint.d/" -mindepth 1 -maxdepth 1 -type f -print -quit 2>/dev/null | read v; then
echo "$0: /docker-entrypoint.d/ is not empty, will attempt to perform configuration"

echo "$0: Looking for shell scripts in /docker-entrypoint.d/"
find "/docker-entrypoint.d/" -follow -type f -print | sort -V | while read -r f; do
case "$f" in
*.sh)
if [ -x "$f" ]; then
echo "$0: Launching $f";
"$f"
else
# warn on shell scripts without exec bit
echo "$0: Ignoring $f, not executable";
fi
;;
*) echo "$0: Ignoring $f";;
esac
done

echo "$0: Configuration complete; ready for start up"
else
echo "$0: No files found in /docker-entrypoint.d/, skipping configuration"
fi
fi

exec "$@"