How To Manually Push Docker Image Registry?
Problem
Node in NotReady state, Nodeletd Phases output failing, with missing images.
{"L":"INFO","T":"2023-12-01T07:01:51.885Z","C":"command/command.go:120","M":"[2023-12-01 07:01:51] docker: Error response from daemon: manifest for localhost:5100/kube-proxy:v1.20.11 not found: manifest unknown: manifest unknown."}
Environment
- Platform9 Edge Cloud (PEC) - Airctl v-5.3.0-2075501
Solution
Manually push the Docker registry from DU Host to the DU VM.
Procedure to manually push the images:
Verify if the DU host has the required docker registry tar available at /opt/pf9/airctl/imgs/docker-imgs-{airctl-version}.tar.gz
.
# la /opt/pf9/airctl/imgs/docker-imgs-v-5.3.0-2075501.tar.gz
Once tar is available for the required Airctl version, proceed with the below steps to push the Docker registry from the DU host to DU VM.
- Execute the push-images command as shown below:
# /opt/pf9/airctl/airctl --config /opt/pf9/airctl/conf/airctl-config.yaml advanced-du push-images --img-tar /opt/pf9/airctl/imgs/docker-imgs-v-5.3.0-2075501.tar.gz --verbose
Pushing images 100% |████████████████████████████████████████| [12m42s:0s]2023-06-23T08:01:18.873Z info finish progressbar: success
2023-06-23T08:01:18.874Z info success
success
2023-06-23T08:01:18.960Z info closing tunnel
registry push done
- Verify if the images are available now.
[root@airctl-1-2683490-924.pf9.localnet ~(admin)]# cd /opt/pf9/images/data/docker/registry/v2/
[root@airctl-1-2683490-924.pf9.localnet v2(admin)]# ll
total 4
drwxr-xr-x 3 root root 20 Jun 23 07:48 blobs
drwxr-xr-x 32 root root 4096 Jun 23 08:01 repositories
[root@airctl-1-2683490-924.pf9.localnet v2(admin)]# du -sch *
4.0G blobs
4.5M repositories
4.0G total
OR
[root@airctl-1-2683490-924.pf9.localnet v2(admin)]# curl http://localhost:5100/v2/_catalog | jq
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1438 100 1438 0 0 43255 0 --:--:-- --:--:-- --:--:-- 43575
{
"repositories": [
"addon-resizer",
"autoscaling/addon-resizer",
"busybox",
"calico/cni",
.
.
// multiple images should list here
.
"prometheus-operator/prometheus-operator",
"python"
]
}
- Once confirmed with the above output, docker images are successfully extracted to the DU VM.
- Restart the Nodeletd stack as mentioned in https://platform9.com/kb/kubernetes/how-to-restart-pmk-stack-
Was this page helpful?