Merge eb94fdd6f4 into eb27013fba
This commit is contained in:
commit
3d533760c7
3
.github/workflows/dockerhub.yml
vendored
3
.github/workflows/dockerhub.yml
vendored
@ -8,10 +8,9 @@ on:
|
|||||||
- '*'
|
- '*'
|
||||||
paths:
|
paths:
|
||||||
- '**.sh'
|
- '**.sh'
|
||||||
- "Dockerfile"
|
- "docker/**"
|
||||||
- '.github/workflows/dockerhub.yml'
|
- '.github/workflows/dockerhub.yml'
|
||||||
|
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
CheckToken:
|
CheckToken:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
|||||||
@ -62,14 +62,8 @@ RUN for verb in help \
|
|||||||
printf -- "%b" "#!/usr/bin/env sh\n/root/.acme.sh/acme.sh --${verb} --config-home /acme.sh \"\$@\"" >/usr/local/bin/--${verb} && chmod +x /usr/local/bin/--${verb} \
|
printf -- "%b" "#!/usr/bin/env sh\n/root/.acme.sh/acme.sh --${verb} --config-home /acme.sh \"\$@\"" >/usr/local/bin/--${verb} && chmod +x /usr/local/bin/--${verb} \
|
||||||
; done
|
; done
|
||||||
|
|
||||||
RUN printf "%b" '#!'"/usr/bin/env sh\n \
|
COPY entry.sh /
|
||||||
if [ \"\$1\" = \"daemon\" ]; then \n \
|
COPY restart-container.sh /usr/local/bin/
|
||||||
trap \"echo stop && killall crond && exit 0\" SIGTERM SIGINT \n \
|
|
||||||
crond && sleep infinity &\n \
|
|
||||||
wait \n \
|
|
||||||
else \n \
|
|
||||||
exec -- \"\$@\"\n \
|
|
||||||
fi" >/entry.sh && chmod +x /entry.sh
|
|
||||||
|
|
||||||
VOLUME /acme.sh
|
VOLUME /acme.sh
|
||||||
|
|
||||||
9
docker/entry.sh
Executable file
9
docker/entry.sh
Executable file
@ -0,0 +1,9 @@
|
|||||||
|
#!/usr/bin/env sh
|
||||||
|
|
||||||
|
if [ "$1" = "daemon" ]; then
|
||||||
|
trap "echo stop && killall crond && exit 0" SIGTERM SIGINT
|
||||||
|
crond && sleep infinity &
|
||||||
|
wait
|
||||||
|
else
|
||||||
|
exec -- "$@"
|
||||||
|
fi
|
||||||
35
docker/restart-container.sh
Executable file
35
docker/restart-container.sh
Executable file
@ -0,0 +1,35 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
#
|
||||||
|
# Usage:
|
||||||
|
# restart-container.sh <container_name_1> <container_name_2> <container_name_n...>
|
||||||
|
#
|
||||||
|
# The design idea was derived from docker.sh by acmesh-official
|
||||||
|
#
|
||||||
|
# https://github.com/acmesh-official/acme.sh/blob/5b8d7a3/deploy/docker.sh
|
||||||
|
#
|
||||||
|
|
||||||
|
DOCKER_DAEMON_SOCKET="/var/run/docker.sock"
|
||||||
|
|
||||||
|
_get_container_id_by_name() {
|
||||||
|
local container_name="$1"
|
||||||
|
curl --silent --unix-socket "$DOCKER_DAEMON_SOCKET" -X GET "http://localhost/containers/json?filters=%7B%22name%22%3A%5B%22${container_name}%22%5D%7D" |
|
||||||
|
tr '{,' '\n' |
|
||||||
|
grep -i '"id":' |
|
||||||
|
head -n 1 |
|
||||||
|
cut -d '"' -f 4
|
||||||
|
}
|
||||||
|
|
||||||
|
_restart_container_by_id() {
|
||||||
|
local container_name="$1"
|
||||||
|
local container_id="$(_get_container_id_by_name $container_name)"
|
||||||
|
curl --silent --unix-socket "$DOCKER_DAEMON_SOCKET" -X POST http://localhost/containers/${container_id}/restart
|
||||||
|
}
|
||||||
|
|
||||||
|
_restart_container_by_name() {
|
||||||
|
local container_name="$1"
|
||||||
|
curl --silent --unix-socket "$DOCKER_DAEMON_SOCKET" -X POST http://localhost/containers/${container_name}/restart
|
||||||
|
}
|
||||||
|
|
||||||
|
for container_name in "$@"; do
|
||||||
|
_restart_container_by_name "$container_name"
|
||||||
|
done
|
||||||
Loading…
Reference in New Issue
Block a user