To load mobile platform images to the Docker images local storage:
Make sure that the following requirements are met on the selected computer:
Access to internet is allowed.
The Docker containerization environment is installed.
The certs folder contains the registry.crt encryption certificate generated during local storage installation.
A local storage is available.
Declare the REGISTRY_HOST variable:
export REGISTRY_HOST=<work node IP address>:5000
Authorize in the Docker imager local storage:
docker login $REGISTRY_HOST
Download the cluster_images*.tgz archive.
NOTE. To get the archive, contact technical support by sending a request to support@fsight.ru or via technical support services that are available after registration at the website.
Install mobile platform images to the local storage:
docker load -i ./cluster_images_v23.12.<version number>.tgz
Declare the FMP_IMAGES variable:
FMP_IMAGES=$(tar -xzf ./cluster_images_v23.12.<version number>.tgz manifest.json --to-command='cat' \
| grep -oP '(?<=("RepoTags":\["))(.*?)(?=("\]))' \
| sed 's/"//g; s/'"'"'//g; s/,/\n/g;')
Set tags and publish mobile platform images in the Docker registry:
for orig_image in ${FMP_IMAGES[*]}; do
tag_image=$(echo ${orig_image} | awk -v REGISTRY=${REGISTRY_HOST} \
'{
n=split($0,arr,"/");
print REGISTRY "/" arr[n-1] "/" arr[n]
}')
echo -e "\nTag ${orig_image} -> ${tag_image}"
docker tag ${orig_image} ${tag_image}
echo -e "\nPush ${tag_image}"
docker push $tag_image
done
Check access to the local storage:
curl --cacert certs/registry.crt https://<work node IP address>:5000/v2/_catalog
After executing the request the response should contain the directory contents, for example:
{"repositories":["cattle-system/mirrored-bci-micro","cattle-system/rancher","cattle-system/rancher-webhook","cattle-system/shell","cert-manager/cert-manager-acmesolver","cert-manager/cert-manager-cainjector","cert-manager/cert-manager-controller","cert-manager/cert-manager-ctl","cert-manager/cert-manager-webhook","fmp/celery-exporter","fmp/elasticsearch","fmp/elasticsearch-exporter","fmp/fluentd","fmp/kibana","fmp/kubectl","fmp/minio","fmp/nginx","fmp/nginx-exporter","fmp/redis","fmp/redis-exporter","fmp/redis-sentinel","fmp/server","fmp-monitoring/grafana","monitoring/alertmanager","monitoring/kube-state-metrics","monitoring/kube-webhook-certgen","monitoring/node-exporter","monitoring/prometheus","monitoring/prometheus-config-reloader","monitoring/prometheus-operator","ongres/envoy","ongres/kubectl","ongres/patroni","ongres/pgbouncer","ongres/postgres-util","ongres/prometheus-postgres-exporter","stackgres/admin-ui","stackgres/cluster-controller","stackgres/jobs","stackgres/operator","stackgres/restapi"]}
After executing the operations mobile platform images are loaded to the local storage.
Next, install Foresight Mobile Platform in the cluster.
See also:
Preparation and Deployment of Fault-Tolerant Cluster Based on Kubernetes | Installing Foresight Mobile Platform in Cluster