script for updating containers

pull/2149/head
Tanner Davis 2 years ago
parent 2109cfdcc3
commit 1482afb976
  1. 35
      ct/rhasspy.sh

@ -52,9 +52,40 @@ function default_settings() {
} }
function update_script() { function update_script() {
if [[ ! -d /var/lib/docker/volumes/rhasspy_profiles/_data ]]; then
msg_error "No ${APP} Installation Found!"
exit
fi
UPD=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "UPDATE" --radiolist --cancel-button Exit-Script "Spacebar = Select" 11 58 4 \
"1" "Update ALL Containers" ON \
"2" "Remove ALL Unused Images" OFF \
3>&1 1>&2 2>&3)
header_info header_info
if [[ ! -d /usr/lib/rhasspy/ ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
msg_info "Updating $APP LXC" if [ "$UPD" == "1" ]; then
msg_info "Updating All Containers"
CONTAINER_LIST="${1:-$(docker ps -q)}"
for container in ${CONTAINER_LIST}; do
CONTAINER_IMAGE="$(docker inspect --format "{{.Config.Image}}" --type container ${container})"
RUNNING_IMAGE="$(docker inspect --format "{{.Image}}" --type container "${container}")"
docker pull "${CONTAINER_IMAGE}"
LATEST_IMAGE="$(docker inspect --format "{{.Id}}" --type image "${CONTAINER_IMAGE}")"
if [[ "${RUNNING_IMAGE}" != "${LATEST_IMAGE}" ]]; then
echo "Updating ${container} image ${CONTAINER_IMAGE}"
DOCKER_COMMAND="$(runlike "${container}")"
docker rm --force "${container}"
eval ${DOCKER_COMMAND}
fi
done
msg_ok "Updated All Containers"
exit
fi
if [ "$UPD" == "2" ]; then
msg_info "Removing ALL Unused Images"
docker image prune -af
msg_ok "Removed ALL Unused Images"
exit
fi
} }

Loading…
Cancel
Save