|
|
@ -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 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|