186 lines
7.9 KiB
Bash
186 lines
7.9 KiB
Bash
#!/bin/bash
|
|
|
|
cmii_image_list=(
|
|
cmlc=cmii=cmii-admin-data=5.4.0.tar.gz
|
|
cmlc=cmii=cmii-admin-gateway=5.4.0.tar.gz
|
|
docker=ossrs=srs=v4.0.136.tar.gz
|
|
)
|
|
middle_image_list=(
|
|
docker=bitnami=bitnami-shell=10-debian-10-r140.tar.gz
|
|
docker=kubernetesui=dashboard=v2.0.1.tar.gz
|
|
docker=bitnami=bitnami-shell=11-debian-11-r136.tar.gz
|
|
docker=kubernetesui=metrics-scraper=v1.0.4.tar.gz
|
|
docker=bitnami=minio=2022.5.4.tar.gz
|
|
docker=library=busybox=latest.tar.gz
|
|
docker=bitnami=minio=2023.5.4.tar.gz
|
|
docker=library=mongo=5.0.tar.gz
|
|
docker=bitnami=mysql=8.0.35-debian-11-r1.tar.gz
|
|
docker=library=nginx=1.21.3.tar.gz
|
|
docker=bitnami=mysql=8.1.0-debian-11-r42.tar.gz
|
|
docker=library=rabbitmq=3.9-management.tar.gz
|
|
docker=bitnami=rabbitmq=3.11.26-debian-11-r2.tar.gz
|
|
docker=library=redis=6.0.20-alpine.tar.gz
|
|
docker=bitnami=rabbitmq=3.9.12-debian-10-r3.tar.gz
|
|
docker=nacos=nacos-server=v2.1.2-slim.tar.gz
|
|
docker=bitnami=redis=6.2.14-debian-11-r1.tar.gz
|
|
docker=ossrs=srs=v4.0.136.tar.gz
|
|
docker=bitnami=redis=6.2.6-debian-10-r0.tar.gz
|
|
docker=ossrs=srs=v4.0-r3.tar.gz
|
|
docker=dyrnq=nfs-subdir-external-provisioner=v4.0.2.tar.gz
|
|
docker=ossrs=srs=v5.0.195.tar.gz
|
|
docker=emqx=emqx=4.2.12.tar.gz
|
|
docker=simonrupf=chronyd=0.4.3.tar.gz
|
|
)
|
|
rke_image_list=(
|
|
docker=rancher=backup-restore-operator=v1.0.3.tar.gz
|
|
docker=rancher=calico-cni=v3.17.2.tar.gz
|
|
docker=rancher=calico-ctl=v3.17.2.tar.gz
|
|
docker=rancher=calico-kube-controllers=v3.17.2.tar.gz
|
|
docker=rancher=calico-node=v3.17.2.tar.gz
|
|
docker=rancher=calico-pod2daemon-flexvol=v3.17.2.tar.gz
|
|
docker=rancher=cis-operator=v1.0.3.tar.gz
|
|
docker=rancher=cluster-proportional-autoscaler=1.7.1.tar.gz
|
|
docker=rancher=cluster-proportional-autoscaler=1.8.1.tar.gz
|
|
docker=rancher=configmap-reload=v0.3.0-rancher4.tar.gz
|
|
docker=rancher=coredns-coredns=1.8.0.tar.gz
|
|
docker=rancher=coreos-etcd=v3.4.14-rancher1.tar.gz
|
|
docker=rancher=coreos-flannel=v0.13.0-rancher1.tar.gz
|
|
docker=rancher=coreos-kube-state-metrics=v1.9.7.tar.gz
|
|
docker=rancher=coreos-prometheus-config-reloader=v0.39.0.tar.gz
|
|
docker=rancher=coreos-prometheus-operator=v0.39.0.tar.gz
|
|
docker=rancher=externalip-webhook=v0.1.6.tar.gz
|
|
docker=rancher=flannel-cni=v0.3.0-rancher6.tar.gz
|
|
docker=rancher=fleet-agent=v0.3.4.tar.gz
|
|
docker=rancher=fleet=v0.3.4.tar.gz
|
|
docker=rancher=fluentd=v0.1.24.tar.gz
|
|
docker=rancher=grafana-grafana=7.1.5.tar.gz
|
|
docker=rancher=hyperkube=v1.20.4-rancher1.tar.gz
|
|
docker=rancher=istio-kubectl=1.5.10.tar.gz
|
|
docker=rancher=jimmidyson-configmap-reload=v0.3.0.tar.gz
|
|
docker=rancher=k8s-dns-dnsmasq-nanny=1.15.2.tar.gz
|
|
docker=rancher=k8s-dns-kube-dns=1.15.2.tar.gz
|
|
docker=rancher=k8s-dns-node-cache=1.15.13.tar.gz
|
|
docker=rancher=k8s-dns-sidecar=1.15.2.tar.gz
|
|
docker=rancher=klipper-lb=v0.1.2.tar.gz
|
|
docker=rancher=kube-api-auth=v0.1.4.tar.gz
|
|
docker=rancher=kubernetes-external-dns=v0.7.3.tar.gz
|
|
docker=rancher=library-busybox=1.31.1.tar.gz
|
|
docker=rancher=library-busybox=1.32.1.tar.gz
|
|
docker=rancher=library-nginx=1.19.2-alpine.tar.gz
|
|
docker=rancher=library-traefik=1.7.19.tar.gz
|
|
docker=rancher=local-path-provisioner=v0.0.11.tar.gz
|
|
docker=rancher=local-path-provisioner=v0.0.14.tar.gz
|
|
docker=rancher=local-path-provisioner=v0.0.19.tar.gz
|
|
docker=rancher=log-aggregator=v0.1.7.tar.gz
|
|
docker=rancher=metrics-server=v0.4.1.tar.gz
|
|
docker=rancher=nginx-ingress-controller-defaultbackend=1.5-rancher1.tar.gz
|
|
docker=rancher=nginx-ingress-controller=nginx-0.43.0-rancher1.tar.gz
|
|
docker=rancher=opa-gatekeeper=v3.1.0-beta.7.tar.gz
|
|
docker=rancher=openzipkin-zipkin=2.14.2.tar.gz
|
|
docker=rancher=pause=3.2.tar.gz
|
|
docker=rancher=plugins-docker=18.09.tar.gz
|
|
docker=rancher=prom-alertmanager=v0.21.0.tar.gz
|
|
docker=rancher=prometheus-auth=v0.2.1.tar.gz
|
|
docker=rancher=prom-node-exporter=v1.0.1.tar.gz
|
|
docker=rancher=prom-prometheus=v2.18.2.tar.gz
|
|
docker=rancher=rancher-agent=v2.5.7.tar.gz
|
|
docker=rancher=rancher=v2.5.7.tar.gz
|
|
docker=rancher=rancher-webhook=v0.1.0-beta9.tar.gz
|
|
docker=rancher=rke-tools=v0.1.72.tar.gz
|
|
docker=rancher=security-scan=v0.1.14.tar.gz
|
|
docker=rancher=security-scan=v0.2.2.tar.gz
|
|
docker=rancher=shell=v0.1.6.tar.gz
|
|
docker=rancher=sonobuoy-sonobuoy=v0.16.3.tar.gz
|
|
docker=rancher=system-upgrade-controller=v0.6.2.tar.gz
|
|
)
|
|
oss_prefix=https://oss.demo.uavcmlc.com/cmlc-installation/shls
|
|
oss_middle_prefix=https://oss.demo.uavcmlc.com/cmlc-installation/mid-image-amd64
|
|
oss_rke_prefix=https://oss.demo.uavcmlc.com/cmlc-installation/rke-image-amd64
|
|
target_harbor_host=103.0.180.181:8033
|
|
|
|
cmii_image_download_from_oss() {
|
|
for image in "${cmii_image_list[@]}"; do
|
|
echo "start to download => $image"
|
|
curl -x socks5h://103.0.180.82:9997 $oss_prefix/$image -o $image
|
|
echo ""
|
|
done
|
|
}
|
|
|
|
middle_image_download_from_oss() {
|
|
mkdir -p /wdd/image/middle/
|
|
for image in "${middle_image_list[@]}"; do
|
|
echo "start to download => $image"
|
|
curl -x socks5h://103.0.180.82:9997 $oss_middle_prefix/$image -o /wdd/image/middle/$image
|
|
echo ""
|
|
done
|
|
}
|
|
|
|
rke_image_download_from_oss() {
|
|
mkdir -p /wdd/image/rke/
|
|
for image in "${rke_image_list[@]}"; do
|
|
echo "start to download => $image"
|
|
curl -x socks5h://103.0.180.82:9997 $oss_rke_prefix/$image -o /wdd/image/rke/$image
|
|
echo ""
|
|
done
|
|
}
|
|
|
|
image_load_to_harbor() {
|
|
local cmii_harbor_prefix="harbor.cdcyy.com.cn/cmii/"
|
|
for image in "${cmii_image_list[@]}"; do
|
|
echo "start to load => $image"
|
|
docker load <"$image"
|
|
echo ""
|
|
if [[ $image == cmlc* ]]; then
|
|
local app_name=$(echo $image | cut -d "=" -f3)
|
|
local ccc=$(echo $image | cut -d "=" -f4)
|
|
local app_tag="${ccc%.tar.gz}"
|
|
echo "from $cmii_harbor_prefix$app_name:$app_tag ==> $target_harbor_host/cmii/$app_name:$app_tag"
|
|
docker tag "$cmii_harbor_prefix$app_name:$app_tag" "$target_harbor_host/cmii/$app_name:$app_tag"
|
|
|
|
echo "start to push => $target_harbor_host/cmii/$app_name:$app_tag"
|
|
docker login -u admin -p V2ryStr@ngPss $target_harbor_host
|
|
docker push "$target_harbor_host/cmii/$app_name:$app_tag"
|
|
echo ""
|
|
fi
|
|
echo ""
|
|
done
|
|
|
|
for image in "${rke_image_list[@]}"; do
|
|
echo "start to load => $image"
|
|
docker load <"$image"
|
|
echo ""
|
|
local app_name_prefix=$(echo $image | cut -d "=" -f2)
|
|
local app_name=$(echo $image | cut -d "=" -f3)
|
|
local ccc=$(echo $image | cut -d "=" -f4)
|
|
local app_tag="${ccc%.tar.gz}"
|
|
echo "from $app_name_prefix/$app_name:$app_tag ==> $target_harbor_host/rancher/$app_name:$app_tag"
|
|
docker tag "$app_name_prefix/$app_name:$app_tag" "$target_harbor_host/rancher/$app_name:$app_tag"
|
|
echo "start to push => $target_harbor_host/rancher/$app_name:$app_tag"
|
|
docker login -u admin -p V2ryStr@ngPss $target_harbor_host
|
|
docker push "$target_harbor_host/rancher/$app_name:$app_tag"
|
|
echo
|
|
done
|
|
|
|
for image in "${middle_image_list[@]}"; do
|
|
echo "start to load => $image"
|
|
docker load <"$image"
|
|
echo ""
|
|
# docker=bitnami=redis=6.2.14-debian-11-r1.tar.gz
|
|
local app_name_prefix=$(echo $image | cut -d "=" -f2)
|
|
local app_name=$(echo $image | cut -d "=" -f3)
|
|
local ccc=$(echo $image | cut -d "=" -f4)
|
|
local app_tag="${ccc%.tar.gz}"
|
|
echo "from $app_name_prefix/$app_name:$app_tag ==> $target_harbor_host/cmii/$app_name:$app_tag"
|
|
echo "start to push => $target_harbor_host/cmii/$app_name:$app_tag"
|
|
docker login -u admin -p V2ryStr@ngPss $target_harbor_host
|
|
docker push "$target_harbor_host/cmii/$app_name:$app_tag"
|
|
done
|
|
|
|
}
|
|
|
|
create_harbor_project() {
|
|
curl -X POST -u "admin:V2ryStr@ngPss" -H "authorization: Basic YWRtaW46VjJyeVN0ckBuZ1Bzcw==" -H "Content-Type: application/json" -d '{"project_name":"cmii","registry_id":null,"metadata":{"public":"true"},"storage_limit":-1}' http://$target_harbor_host/api/v2.0/projects
|
|
|
|
curl -X POST -u "admin:V2ryStr@ngPss" -H "authorization: Basic YWRtaW46VjJyeVN0ckBuZ1Bzcw==" -H "Content-Type: application/json" -d '{"project_name":"rancher","registry_id":null,"metadata":{"public":"true"},"storage_limit":-1}' http://$target_harbor_host/api/v2.0/projects
|
|
}
|