Loading Mobile Platform Images to Local Storage

To load mobile platform images to the Docker images local storage:

  1. Make sure that the following requirements are met on the selected computer:

  1. Declare the REGISTRY_HOST variable:

export REGISTRY_HOST=<work node IP address>:5000

  1. Authorize in the Docker imager local storage:

docker login $REGISTRY_HOST

  1. 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.

  1. Install mobile platform images to the local storage:

docker load -i ./cluster_images_v23.12.<version number>.tgz

  1. 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;')

  1. 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

  1. 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