mirror of
https://github.com/hyperledger/fabric-samples.git
synced 2026-06-19 16:15:09 +00:00
Add an option to stage docker images locally to KIND (#528)
Signed-off-by: Josh Kneubuhl <jkneubuh@us.ibm.com>
This commit is contained in:
parent
8c1c36ae09
commit
8183da6666
21 changed files with 54 additions and 47 deletions
|
|
@ -135,7 +135,7 @@ from a public container registry, copying the external builders into the target
|
|||
```yaml
|
||||
initContainers:
|
||||
- name: fabric-ccs-builder
|
||||
image: {{LOCAL_CONTAINER_REGISTRY}}/fabric-ccs-builder
|
||||
image: {{FABRIC_CONTAINER_REGISTRY}}/fabric-ccs-builder
|
||||
command: [sh, -c]
|
||||
args: ["cp /go/bin/* /var/hyperledger/fabric/chaincode/ccs-builder/bin/"]
|
||||
volumeMounts:
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ spec:
|
|||
spec:
|
||||
containers:
|
||||
- name: main
|
||||
image: {{LOCAL_CONTAINER_REGISTRY}}/fabric-tools:{{FABRIC_VERSION}}
|
||||
image: {{FABRIC_CONTAINER_REGISTRY}}/fabric-tools:{{FABRIC_VERSION}}
|
||||
imagePullPolicy: IfNotPresent
|
||||
env:
|
||||
- name: FABRIC_CFG_PATH
|
||||
|
|
|
|||
|
|
@ -20,7 +20,8 @@ spec:
|
|||
spec:
|
||||
containers:
|
||||
- name: main
|
||||
image: {{LOCAL_CONTAINER_REGISTRY}}/fabric-ca:{{FABRIC_CA_VERSION}}
|
||||
image: {{FABRIC_CONTAINER_REGISTRY}}/fabric-ca:{{FABRIC_CA_VERSION}}
|
||||
imagePullPolicy: IfNotPresent
|
||||
env:
|
||||
- name: FABRIC_CA_SERVER_CA_NAME
|
||||
value: "org0-ecert-ca"
|
||||
|
|
|
|||
|
|
@ -43,8 +43,8 @@ spec:
|
|||
spec:
|
||||
containers:
|
||||
- name: main
|
||||
image: {{LOCAL_CONTAINER_REGISTRY}}/fabric-orderer:{{FABRIC_VERSION}}
|
||||
imagePullPolicy: Always
|
||||
image: {{FABRIC_CONTAINER_REGISTRY}}/fabric-orderer:{{FABRIC_VERSION}}
|
||||
imagePullPolicy: IfNotPresent
|
||||
envFrom:
|
||||
- configMapRef:
|
||||
name: org0-orderer1-env
|
||||
|
|
|
|||
|
|
@ -43,8 +43,8 @@ spec:
|
|||
spec:
|
||||
containers:
|
||||
- name: main
|
||||
image: {{LOCAL_CONTAINER_REGISTRY}}/fabric-orderer:{{FABRIC_VERSION}}
|
||||
imagePullPolicy: Always
|
||||
image: {{FABRIC_CONTAINER_REGISTRY}}/fabric-orderer:{{FABRIC_VERSION}}
|
||||
imagePullPolicy: IfNotPresent
|
||||
envFrom:
|
||||
- configMapRef:
|
||||
name: org0-orderer2-env
|
||||
|
|
|
|||
|
|
@ -43,8 +43,8 @@ spec:
|
|||
spec:
|
||||
containers:
|
||||
- name: main
|
||||
image: {{LOCAL_CONTAINER_REGISTRY}}/fabric-orderer:{{FABRIC_VERSION}}
|
||||
imagePullPolicy: Always
|
||||
image: {{FABRIC_CONTAINER_REGISTRY}}/fabric-orderer:{{FABRIC_VERSION}}
|
||||
imagePullPolicy: IfNotPresent
|
||||
envFrom:
|
||||
- configMapRef:
|
||||
name: org0-orderer3-env
|
||||
|
|
|
|||
|
|
@ -20,7 +20,8 @@ spec:
|
|||
spec:
|
||||
containers:
|
||||
- name: main
|
||||
image: {{LOCAL_CONTAINER_REGISTRY}}/fabric-ca:{{FABRIC_CA_VERSION}}
|
||||
image: {{FABRIC_CONTAINER_REGISTRY}}/fabric-ca:{{FABRIC_CA_VERSION}}
|
||||
imagePullPolicy: IfNotPresent
|
||||
env:
|
||||
- name: FABRIC_CA_SERVER_CA_NAME
|
||||
value: "org0-tls-ca"
|
||||
|
|
|
|||
|
|
@ -20,8 +20,8 @@ spec:
|
|||
spec:
|
||||
containers:
|
||||
- name: main
|
||||
image: {{LOCAL_CONTAINER_REGISTRY}}/fabric-tools:{{FABRIC_VERSION}}
|
||||
imagePullPolicy: Always
|
||||
image: {{FABRIC_CONTAINER_REGISTRY}}/fabric-tools:{{FABRIC_VERSION}}
|
||||
imagePullPolicy: IfNotPresent
|
||||
env:
|
||||
- name: FABRIC_CFG_PATH
|
||||
value: /var/hyperledger/fabric/config
|
||||
|
|
|
|||
|
|
@ -20,7 +20,8 @@ spec:
|
|||
spec:
|
||||
containers:
|
||||
- name: main
|
||||
image: {{LOCAL_CONTAINER_REGISTRY}}/fabric-ca:{{FABRIC_CA_VERSION}}
|
||||
image: {{FABRIC_CONTAINER_REGISTRY}}/fabric-ca:{{FABRIC_CA_VERSION}}
|
||||
imagePullPolicy: IfNotPresent
|
||||
env:
|
||||
- name: FABRIC_CA_SERVER_CA_NAME
|
||||
value: "org1-ecert-ca"
|
||||
|
|
|
|||
|
|
@ -46,8 +46,8 @@ spec:
|
|||
spec:
|
||||
containers:
|
||||
- name: main
|
||||
image: {{LOCAL_CONTAINER_REGISTRY}}/fabric-peer:{{FABRIC_VERSION}}
|
||||
imagePullPolicy: Always
|
||||
image: {{FABRIC_CONTAINER_REGISTRY}}/fabric-peer:{{FABRIC_VERSION}}
|
||||
imagePullPolicy: IfNotPresent
|
||||
envFrom:
|
||||
- configMapRef:
|
||||
name: org1-peer1-config
|
||||
|
|
@ -66,8 +66,8 @@ spec:
|
|||
# load the external chaincode builder into the peer image prior to peer launch.
|
||||
initContainers:
|
||||
- name: fabric-ccs-builder
|
||||
image: {{LOCAL_CONTAINER_REGISTRY}}/fabric-ccs-builder
|
||||
imagePullPolicy: Always
|
||||
image: ghcr.io/hyperledgendary/fabric-ccs-builder
|
||||
imagePullPolicy: IfNotPresent
|
||||
command: [sh, -c]
|
||||
args: ["cp /go/bin/* /var/hyperledger/fabric/chaincode/ccs-builder/bin/"]
|
||||
volumeMounts:
|
||||
|
|
|
|||
|
|
@ -46,8 +46,8 @@ spec:
|
|||
spec:
|
||||
containers:
|
||||
- name: main
|
||||
image: {{LOCAL_CONTAINER_REGISTRY}}/fabric-peer:{{FABRIC_VERSION}}
|
||||
imagePullPolicy: Always
|
||||
image: {{FABRIC_CONTAINER_REGISTRY}}/fabric-peer:{{FABRIC_VERSION}}
|
||||
imagePullPolicy: IfNotPresent
|
||||
envFrom:
|
||||
- configMapRef:
|
||||
name: org1-peer2-config
|
||||
|
|
|
|||
|
|
@ -20,7 +20,8 @@ spec:
|
|||
spec:
|
||||
containers:
|
||||
- name: main
|
||||
image: {{LOCAL_CONTAINER_REGISTRY}}/fabric-ca:{{FABRIC_CA_VERSION}}
|
||||
image: {{FABRIC_CONTAINER_REGISTRY}}/fabric-ca:{{FABRIC_CA_VERSION}}
|
||||
imagePullPolicy: IfNotPresent
|
||||
env:
|
||||
- name: FABRIC_CA_SERVER_CA_NAME
|
||||
value: "org1-tls-ca"
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ spec:
|
|||
spec:
|
||||
containers:
|
||||
- name: main
|
||||
image: {{LOCAL_CONTAINER_REGISTRY}}/fabric-tools:{{FABRIC_VERSION}}
|
||||
image: {{FABRIC_CONTAINER_REGISTRY}}/fabric-tools:{{FABRIC_VERSION}}
|
||||
imagePullPolicy: IfNotPresent
|
||||
env:
|
||||
- name: FABRIC_CFG_PATH
|
||||
|
|
|
|||
|
|
@ -20,7 +20,8 @@ spec:
|
|||
spec:
|
||||
containers:
|
||||
- name: main
|
||||
image: {{LOCAL_CONTAINER_REGISTRY}}/fabric-ca:{{FABRIC_CA_VERSION}}
|
||||
image: {{FABRIC_CONTAINER_REGISTRY}}/fabric-ca:{{FABRIC_CA_VERSION}}
|
||||
imagePullPolicy: IfNotPresent
|
||||
env:
|
||||
- name: FABRIC_CA_SERVER_CA_NAME
|
||||
value: "org2-ecert-ca"
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@ spec:
|
|||
spec:
|
||||
containers:
|
||||
- name: main
|
||||
image: {{LOCAL_CONTAINER_REGISTRY}}/fabric-peer:{{FABRIC_VERSION}}
|
||||
image: {{FABRIC_CONTAINER_REGISTRY}}/fabric-peer:{{FABRIC_VERSION}}
|
||||
imagePullPolicy: IfNotPresent
|
||||
envFrom:
|
||||
- configMapRef:
|
||||
|
|
@ -66,7 +66,7 @@ spec:
|
|||
# load the external chaincode builder into the peer image prior to peer launch.
|
||||
initContainers:
|
||||
- name: fabric-ccs-builder
|
||||
image: {{LOCAL_CONTAINER_REGISTRY}}/fabric-ccs-builder
|
||||
image: ghcr.io/hyperledgendary/fabric-ccs-builder
|
||||
imagePullPolicy: IfNotPresent
|
||||
command: [sh, -c]
|
||||
args: ["cp /go/bin/* /var/hyperledger/fabric/chaincode/ccs-builder/bin/"]
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@ spec:
|
|||
spec:
|
||||
containers:
|
||||
- name: main
|
||||
image: {{LOCAL_CONTAINER_REGISTRY}}/fabric-peer:{{FABRIC_VERSION}}
|
||||
image: {{FABRIC_CONTAINER_REGISTRY}}/fabric-peer:{{FABRIC_VERSION}}
|
||||
imagePullPolicy: IfNotPresent
|
||||
envFrom:
|
||||
- configMapRef:
|
||||
|
|
|
|||
|
|
@ -20,7 +20,8 @@ spec:
|
|||
spec:
|
||||
containers:
|
||||
- name: main
|
||||
image: {{LOCAL_CONTAINER_REGISTRY}}/fabric-ca:{{FABRIC_CA_VERSION}}
|
||||
image: {{FABRIC_CONTAINER_REGISTRY}}/fabric-ca:{{FABRIC_CA_VERSION}}
|
||||
imagePullPolicy: IfNotPresent
|
||||
env:
|
||||
- name: FABRIC_CA_SERVER_CA_NAME
|
||||
value: "org2-tls-ca"
|
||||
|
|
|
|||
|
|
@ -22,7 +22,6 @@ set -o errexit
|
|||
|
||||
FABRIC_VERSION=${TEST_NETWORK_FABRIC_VERSION:-2.3.2}
|
||||
FABRIC_CA_VERSION=${TEST_NETWORK_FABRIC_CA_VERSION:-1.5.2}
|
||||
LOCAL_CONTAINER_REGISTRY=localhost:5000
|
||||
FABRIC_CONTAINER_REGISTRY=${TEST_NETWORK_FABRIC_CONTAINER_REGISTRY:-hyperledger}
|
||||
NETWORK_NAME=${TEST_NETWORK_NAME:-test-network}
|
||||
CLUSTER_NAME=${TEST_NETWORK_KIND_CLUSTER_NAME:-kind}
|
||||
|
|
@ -32,6 +31,7 @@ LOG_FILE=${TEST_NETWORK_LOG_FILE:-network.log}
|
|||
DEBUG_FILE=${TEST_NETWORK_DEBUG_FILE:-network-debug.log}
|
||||
LOCAL_REGISTRY_NAME=${TEST_NETWORK_LOCAL_REGISTRY_NAME:-kind-registry}
|
||||
LOCAL_REGISTRY_PORT=${TEST_NETWORK_LOCAL_REGISTRY_PORT:-5000}
|
||||
STAGE_DOCKER_IMAGES=${TEST_NETWORK_STAGE_DOCKER_IMAGES:-false}
|
||||
NGINX_HTTP_PORT=${TEST_NETWORK_INGRESS_HTTP_PORT:-80}
|
||||
NGINX_HTTPS_PORT=${TEST_NETWORK_INGRESS_HTTPS_PORT:-443}
|
||||
CHAINCODE_NAME=${TEST_NETWORK_CHAINCODE_NAME:-asset-transfer-basic}
|
||||
|
|
@ -106,6 +106,11 @@ if [ "${MODE}" == "kind" ]; then
|
|||
kind_init
|
||||
log "🏁 - Cluster is ready."
|
||||
|
||||
elif [ "${MODE}" == "load-images" ]; then
|
||||
log "Loading images to KIND:"
|
||||
load_docker_images
|
||||
log "🏁 - Images loaded."
|
||||
|
||||
elif [ "${MODE}" == "unkind" ]; then
|
||||
log "Deleting cluster \"${CLUSTER_NAME}\":"
|
||||
kind_unkind
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@
|
|||
function launch_CA() {
|
||||
local yaml=$1
|
||||
cat ${yaml} \
|
||||
| sed 's,{{LOCAL_CONTAINER_REGISTRY}},'${LOCAL_CONTAINER_REGISTRY}',g' \
|
||||
| sed 's,{{FABRIC_CONTAINER_REGISTRY}},'${FABRIC_CONTAINER_REGISTRY}',g' \
|
||||
| sed 's,{{FABRIC_CA_VERSION}},'${FABRIC_CA_VERSION}',g' \
|
||||
| kubectl -n $NS apply -f -
|
||||
}
|
||||
|
|
|
|||
|
|
@ -18,23 +18,17 @@ function pull_docker_images() {
|
|||
pop_fn
|
||||
}
|
||||
|
||||
function push_images_to_local() {
|
||||
push_fn "Push docker images to local image repository"
|
||||
function load_docker_images() {
|
||||
push_fn "Loading docker images to KIND control plane"
|
||||
|
||||
docker tag ${FABRIC_CONTAINER_REGISTRY}/fabric-ca:$FABRIC_CA_VERSION ${LOCAL_CONTAINER_REGISTRY}/fabric-ca:$FABRIC_CA_VERSION
|
||||
docker push ${LOCAL_CONTAINER_REGISTRY}/fabric-ca:$FABRIC_CA_VERSION
|
||||
docker tag ${FABRIC_CONTAINER_REGISTRY}/fabric-orderer:$FABRIC_VERSION ${LOCAL_CONTAINER_REGISTRY}/fabric-orderer:$FABRIC_VERSION
|
||||
docker push ${LOCAL_CONTAINER_REGISTRY}/fabric-orderer:$FABRIC_VERSION
|
||||
docker tag ${FABRIC_CONTAINER_REGISTRY}/fabric-peer:$FABRIC_VERSION ${LOCAL_CONTAINER_REGISTRY}/fabric-peer:$FABRIC_VERSION
|
||||
docker push ${LOCAL_CONTAINER_REGISTRY}/fabric-peer:$FABRIC_VERSION
|
||||
docker tag ${FABRIC_CONTAINER_REGISTRY}/fabric-tools:$FABRIC_VERSION ${LOCAL_CONTAINER_REGISTRY}/fabric-tools:$FABRIC_VERSION
|
||||
docker push ${LOCAL_CONTAINER_REGISTRY}/fabric-tools:$FABRIC_VERSION
|
||||
docker tag ghcr.io/hyperledgendary/fabric-ccs-builder:latest ${LOCAL_CONTAINER_REGISTRY}/fabric-ccs-builder:latest
|
||||
docker push ${LOCAL_CONTAINER_REGISTRY}/fabric-ccs-builder:latest
|
||||
docker tag ghcr.io/hyperledgendary/fabric-ccaas-asset-transfer-basic:latest ${LOCAL_CONTAINER_REGISTRY}/fabric-ccaas-asset-transfer-basic:latest
|
||||
docker push ${LOCAL_CONTAINER_REGISTRY}/fabric-ccaas-asset-transfer-basic:latest
|
||||
|
||||
pop_fn
|
||||
kind load docker-image ${FABRIC_CONTAINER_REGISTRY}/fabric-ca:$FABRIC_CA_VERSION
|
||||
kind load docker-image ${FABRIC_CONTAINER_REGISTRY}/fabric-orderer:$FABRIC_VERSION
|
||||
kind load docker-image ${FABRIC_CONTAINER_REGISTRY}/fabric-peer:$FABRIC_VERSION
|
||||
kind load docker-image ${FABRIC_CONTAINER_REGISTRY}/fabric-tools:$FABRIC_VERSION
|
||||
kind load docker-image ghcr.io/hyperledgendary/fabric-ccs-builder:latest
|
||||
kind load docker-image ghcr.io/hyperledgendary/fabric-ccaas-asset-transfer-basic:latest
|
||||
|
||||
pop_fn
|
||||
}
|
||||
|
||||
function apply_nginx_ingress() {
|
||||
|
|
@ -143,8 +137,10 @@ function kind_init() {
|
|||
apply_nginx_ingress
|
||||
launch_docker_registry
|
||||
|
||||
pull_docker_images
|
||||
push_images_to_local
|
||||
if [ "${STAGE_DOCKER_IMAGES}" == true ]; then
|
||||
pull_docker_images
|
||||
load_docker_images
|
||||
fi
|
||||
}
|
||||
|
||||
function kind_unkind() {
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
function launch() {
|
||||
local yaml=$1
|
||||
cat ${yaml} \
|
||||
| sed 's,{{LOCAL_CONTAINER_REGISTRY}},'${LOCAL_CONTAINER_REGISTRY}',g' \
|
||||
| sed 's,{{FABRIC_CONTAINER_REGISTRY}},'${FABRIC_CONTAINER_REGISTRY}',g' \
|
||||
| sed 's,{{FABRIC_VERSION}},'${FABRIC_VERSION}',g' \
|
||||
| kubectl -n $NS apply -f -
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue