geerlingguy / geerlingguy/internet-pi

Create upgrade / update / backup guide

Open
#7 5 comments 5 reactions 0 assignees View on GitHub
planned
Dominant language
Jinja
Stars
4.7k
Forks
488
Avg merge
1d 5h
Merged PRs (30d)
1

Description

Since it may be non-obvious for those new to Docker.

Basically, the easiest way is to go into each directory in the home folder (in this example, Pi-hole), and pull the images using `docker-compose`, then restart so it's running the latest image:

```
# Pi-hole update example
cd ~/pi-hole
docker-compose pull # pulls the latest images inside the compose file
docker-compose up -d --no-deps # restarts necessary containers with newer images
docker system prune --all # deletes unused container images
```

You would need to do that manually inside each of the associated docker-compose-containing directories from time to time.

It might be good to do the following so this can be somewhat automated:

1. Create a separate playbook or task file that backs up all the relevant configurations/Docker volumes (most notably, pi-hole).
2. Create a playbook that upgrades all images (doing the above, but in each managed directory).
3. Add documentation on how to run the playbook (and recover from backup in case of failure).

Maybe don't do the system prune by default in case someone _does_ need to quickly recover back to an older image with a backup restore.

Contributor guide

No contributing guide indexed for this repository

Research direction

No target files are named. Start by locating the managed docker-compose-containing directories and reviewing how their configurations and volumes are organized. Done means backup and upgrade automation exists for the relevant directories, with documentation covering execution and recovery without pruning old images by default.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, docker-compose
Domain
devops, documentation, infrastructure
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.