Start demo improved
This commit is contained in:
17
README.md
17
README.md
@@ -1,3 +1,20 @@
|
|||||||
|
# RUN DOCKER DEMO
|
||||||
|
|
||||||
|
```
|
||||||
|
sudo ./clone_opencloud_microservices.sh
|
||||||
|
cd ./docker
|
||||||
|
./start-demo.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
GO on localhost:8000
|
||||||
|
|
||||||
|
Before launch or to stop properly
|
||||||
|
|
||||||
|
```
|
||||||
|
cd ./docker
|
||||||
|
./stop.sh
|
||||||
|
```
|
||||||
|
|
||||||
# Purpose of this component
|
# Purpose of this component
|
||||||
|
|
||||||
The purpose of oc-deploy, is to deploy all the OC components over a Kubernetes cluster.
|
The purpose of oc-deploy, is to deploy all the OC components over a Kubernetes cluster.
|
||||||
|
|||||||
@@ -32,7 +32,7 @@ clone_repo() {
|
|||||||
echo "Check in $branche & pull"
|
echo "Check in $branche & pull"
|
||||||
ls
|
ls
|
||||||
echo "Repository '$repo_name' already exists. Pulling latest changes..."
|
echo "Repository '$repo_name' already exists. Pulling latest changes..."
|
||||||
cd "$repo_name" && git checkout $branche && git pull
|
cd "$repo_name" && git stash && git checkout $branche
|
||||||
cd ..
|
cd ..
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,12 +1,21 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
KUBERNETES_ENV_FILE=$(realpath ${1:-"./kube.exemple.env"})
|
server=$(grep 'server:' ~/.kube/config | awk '{print $2}')
|
||||||
|
|
||||||
|
host=$(echo "$server" | sed -E 's#https://([^:]+):([0-9]+)#\1#')
|
||||||
|
port=$(echo "$server" | sed -E 's#https://([^:]+):([0-9]+)#\2#')
|
||||||
|
ca=$(grep 'certificate-authority-data:' ~/.kube/config | awk '{print $2}')
|
||||||
|
cert=$(grep 'client-certificate-data:' ~/.kube/config | awk '{print $2}')
|
||||||
|
key=$(grep 'client-key-data:' ~/.kube/config | awk '{print $2}')
|
||||||
|
|
||||||
HOST=${2:-"http://localhost:8000"}
|
HOST=${2:-"http://localhost:8000"}
|
||||||
docker network create oc | true
|
docker network create oc | true
|
||||||
|
|
||||||
docker compose down
|
docker compose down
|
||||||
|
|
||||||
cd ./tools && docker compose -f ./docker-compose.dev.yml up --force-recreate -d
|
cd ./tools && docker compose -f ./docker-compose.dev.yml up --force-recreate -d
|
||||||
docker compose -f ./docker-compose.traefik.yml up --force-recreate -d && cd ..
|
docker compose -f ./docker-compose.traefik.yml up --force-recreate -d && cd ..
|
||||||
|
|
||||||
|
|
||||||
cd ./db && ./add.sh && cd ..
|
cd ./db && ./add.sh && cd ..
|
||||||
|
|
||||||
cd ../..
|
cd ../..
|
||||||
@@ -30,7 +39,15 @@ do
|
|||||||
docker kill $i | true
|
docker kill $i | true
|
||||||
docker rm $i | true
|
docker rm $i | true
|
||||||
cd ./$i
|
cd ./$i
|
||||||
cp $KUBERNETES_ENV_FILE ./env.env
|
cat > ./env.env <<EOF
|
||||||
|
KUBERNETES_SERVICE_HOST=$host
|
||||||
|
KUBERNETES_SERVICE_PORT=$port
|
||||||
|
KUBE_CA="$ca"
|
||||||
|
KUBE_CERT="$cert"
|
||||||
|
KUBE_DATA="$key"
|
||||||
|
EOF
|
||||||
docker build . -t $i --build-arg=HOST=$HOST && docker compose up -d
|
docker build . -t $i --build-arg=HOST=$HOST && docker compose up -d
|
||||||
cd ..
|
cd ..
|
||||||
done
|
done
|
||||||
|
|
||||||
|
docker compose up hydra-client -d
|
||||||
|
|||||||
@@ -1,5 +1,12 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
export KUBERNETES_ENV_FILE=$(realpath ${KUBERNETES_ENV_FILE=:-"./kube.exemple.env"})
|
server=$(grep 'server:' ~/.kube/config | awk '{print $2}')
|
||||||
|
|
||||||
|
host=$(echo "$server" | sed -E 's#https://([^:]+):([0-9]+)#\1#')
|
||||||
|
port=$(echo "$server" | sed -E 's#https://([^:]+):([0-9]+)#\2#')
|
||||||
|
ca=$(grep 'certificate-authority-data:' ~/.kube/config | awk '{print $2}')
|
||||||
|
cert=$(grep 'client-certificate-data:' ~/.kube/config | awk '{print $2}')
|
||||||
|
key=$(grep 'client-key-data:' ~/.kube/config | awk '{print $2}')
|
||||||
|
|
||||||
export HOST=${HOST:-"http://localhost:8000"}
|
export HOST=${HOST:-"http://localhost:8000"}
|
||||||
docker network create oc | true
|
docker network create oc | true
|
||||||
|
|
||||||
@@ -7,6 +14,7 @@ docker compose down
|
|||||||
cd ./tools && docker compose -f ./docker-compose.dev.yml up --force-recreate -d
|
cd ./tools && docker compose -f ./docker-compose.dev.yml up --force-recreate -d
|
||||||
docker compose -f ./docker-compose.traefik.yml up --force-recreate -d && cd ..
|
docker compose -f ./docker-compose.traefik.yml up --force-recreate -d && cd ..
|
||||||
|
|
||||||
|
|
||||||
cd ../..
|
cd ../..
|
||||||
|
|
||||||
REPOS=(
|
REPOS=(
|
||||||
@@ -28,7 +36,15 @@ do
|
|||||||
docker kill $i | true
|
docker kill $i | true
|
||||||
docker rm $i | true
|
docker rm $i | true
|
||||||
cd ./$i
|
cd ./$i
|
||||||
cp $KUBERNETES_ENV_FILE ./env.env
|
cat > ./env.env <<EOF
|
||||||
|
KUBERNETES_SERVICE_HOST=$host
|
||||||
|
KUBERNETES_SERVICE_PORT=$port
|
||||||
|
KUBE_CA="$ca"
|
||||||
|
KUBE_CERT="$cert"
|
||||||
|
KUBE_DATA="$key"
|
||||||
|
EOF
|
||||||
make run-docker
|
make run-docker
|
||||||
cd ..
|
cd ..
|
||||||
done
|
done
|
||||||
|
|
||||||
|
docker compose up hydra-client -d
|
||||||
|
|||||||
@@ -90,6 +90,33 @@ services:
|
|||||||
deploy:
|
deploy:
|
||||||
restart_policy:
|
restart_policy:
|
||||||
condition: on-failure
|
condition: on-failure
|
||||||
|
ldap:
|
||||||
|
image: pgarrett/ldap-alpine
|
||||||
|
container_name: ldap
|
||||||
|
volumes:
|
||||||
|
- "./ldap.ldif:/ldif/ldap.ldif"
|
||||||
|
networks:
|
||||||
|
- oc
|
||||||
|
ports:
|
||||||
|
- "390:389"
|
||||||
|
deploy:
|
||||||
|
restart_policy:
|
||||||
|
condition: on-failure
|
||||||
|
keto:
|
||||||
|
image: oryd/keto:v0.7.0-alpha.1-sqlite
|
||||||
|
ports:
|
||||||
|
- "4466:4466"
|
||||||
|
- "4467:4467"
|
||||||
|
command: serve -c /home/ory/keto.yml
|
||||||
|
restart: on-failure
|
||||||
|
volumes:
|
||||||
|
- type: bind
|
||||||
|
source: .
|
||||||
|
target: /home/ory
|
||||||
|
container_name: keto
|
||||||
|
networks:
|
||||||
|
- oc
|
||||||
|
|
||||||
hydra-client:
|
hydra-client:
|
||||||
image: oryd/hydra:v2.2.0
|
image: oryd/hydra:v2.2.0
|
||||||
container_name: hydra-client
|
container_name: hydra-client
|
||||||
@@ -127,32 +154,6 @@ services:
|
|||||||
interval: 10s
|
interval: 10s
|
||||||
timeout: 10s
|
timeout: 10s
|
||||||
retries: 10
|
retries: 10
|
||||||
ldap:
|
|
||||||
image: pgarrett/ldap-alpine
|
|
||||||
container_name: ldap
|
|
||||||
volumes:
|
|
||||||
- "./ldap.ldif:/ldif/ldap.ldif"
|
|
||||||
networks:
|
|
||||||
- oc
|
|
||||||
ports:
|
|
||||||
- "390:389"
|
|
||||||
deploy:
|
|
||||||
restart_policy:
|
|
||||||
condition: on-failure
|
|
||||||
keto:
|
|
||||||
image: oryd/keto:v0.7.0-alpha.1-sqlite
|
|
||||||
ports:
|
|
||||||
- "4466:4466"
|
|
||||||
- "4467:4467"
|
|
||||||
command: serve -c /home/ory/keto.yml
|
|
||||||
restart: on-failure
|
|
||||||
volumes:
|
|
||||||
- type: bind
|
|
||||||
source: .
|
|
||||||
target: /home/ory
|
|
||||||
container_name: keto
|
|
||||||
networks:
|
|
||||||
- oc
|
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
oc-data:
|
oc-data:
|
||||||
|
|||||||
4
env.env
4
env.env
@@ -1,4 +1,4 @@
|
|||||||
KUBERNETES_SERVICE_HOST=192.168.1.169
|
KUBERNETES_SERVICE_HOST=192.168.47.20
|
||||||
KUBE_CA="LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUJkekNDQVIyZ0F3SUJBZ0lCQURBS0JnZ3Foa2pPUFFRREFqQWpNU0V3SHdZRFZRUUREQmhyTTNNdGMyVnkKZG1WeUxXTmhRREUzTWpNeE1USXdNell3SGhjTk1qUXdPREE0TVRBeE16VTJXaGNOTXpRd09EQTJNVEF4TXpVMgpXakFqTVNFd0h3WURWUVFEREJock0zTXRjMlZ5ZG1WeUxXTmhRREUzTWpNeE1USXdNell3V1RBVEJnY3Foa2pPClBRSUJCZ2dxaGtqT1BRTUJCd05DQUFTVlk3ZHZhNEdYTVdkMy9jMlhLN3JLYjlnWXgyNSthaEE0NmkyNVBkSFAKRktQL2UxSVMyWVF0dzNYZW1TTUQxaStZdzJSaVppNUQrSVZUamNtNHdhcnFvMEl3UURBT0JnTlZIUThCQWY4RQpCQU1DQXFRd0R3WURWUjBUQVFIL0JBVXdBd0VCL3pBZEJnTlZIUTRFRmdRVWtlUVJpNFJiODduME5yRnZaWjZHClc2SU55NnN3Q2dZSUtvWkl6ajBFQXdJRFNBQXdSUUlnRXA5ck04WmdNclRZSHYxZjNzOW5DZXZZeWVVa3lZUk4KWjUzazdoaytJS1FDSVFDbk05TnVGKzlTakIzNDFacGZ5ays2NEpWdkpSM3BhcmVaejdMd2lhNm9kdz09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K"
|
KUBE_CA="LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUJkekNDQVIyZ0F3SUJBZ0lCQURBS0JnZ3Foa2pPUFFRREFqQWpNU0V3SHdZRFZRUUREQmhyTTNNdGMyVnkKZG1WeUxXTmhRREUzTWpNeE1USXdNell3SGhjTk1qUXdPREE0TVRBeE16VTJXaGNOTXpRd09EQTJNVEF4TXpVMgpXakFqTVNFd0h3WURWUVFEREJock0zTXRjMlZ5ZG1WeUxXTmhRREUzTWpNeE1USXdNell3V1RBVEJnY3Foa2pPClBRSUJCZ2dxaGtqT1BRTUJCd05DQUFTVlk3ZHZhNEdYTVdkMy9jMlhLN3JLYjlnWXgyNSthaEE0NmkyNVBkSFAKRktQL2UxSVMyWVF0dzNYZW1TTUQxaStZdzJSaVppNUQrSVZUamNtNHdhcnFvMEl3UURBT0JnTlZIUThCQWY4RQpCQU1DQXFRd0R3WURWUjBUQVFIL0JBVXdBd0VCL3pBZEJnTlZIUTRFRmdRVWtlUVJpNFJiODduME5yRnZaWjZHClc2SU55NnN3Q2dZSUtvWkl6ajBFQXdJRFNBQXdSUUlnRXA5ck04WmdNclRZSHYxZjNzOW5DZXZZeWVVa3lZUk4KWjUzazdoaytJS1FDSVFDbk05TnVGKzlTakIzNDFacGZ5ays2NEpWdkpSM3BhcmVaejdMd2lhNm9kdz09Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K"
|
||||||
KUBE_CERT="LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUJrVENDQVRlZ0F3SUJBZ0lJWUxWNkFPQkdrU1F3Q2dZSUtvWkl6ajBFQXdJd0l6RWhNQjhHQTFVRUF3d1kKYXpOekxXTnNhV1Z1ZEMxallVQXhOekl6TVRFeU1ETTJNQjRYRFRJME1EZ3dPREV3TVRNMU5sb1hEVEkxTURndwpPREV3TVRNMU5sb3dNREVYTUJVR0ExVUVDaE1PYzNsemRHVnRPbTFoYzNSbGNuTXhGVEFUQmdOVkJBTVRESE41CmMzUmxiVHBoWkcxcGJqQlpNQk1HQnlxR1NNNDlBZ0VHQ0NxR1NNNDlBd0VIQTBJQUJGQ2Q1MFdPeWdlQ2syQzcKV2FrOWY4MVAvSkJieVRIajRWOXBsTEo0ck5HeHFtSjJOb2xROFYxdUx5RjBtOTQ2Nkc0RmRDQ2dqaXFVSk92Swp3NVRPNnd5alNEQkdNQTRHQTFVZER3RUIvd1FFQXdJRm9EQVRCZ05WSFNVRUREQUtCZ2dyQmdFRkJRY0RBakFmCkJnTlZIU01FR0RBV2dCVFJkOFI5cXVWK2pjeUVmL0ovT1hQSzMyS09XekFLQmdncWhrak9QUVFEQWdOSUFEQkYKQWlFQTArbThqTDBJVldvUTZ0dnB4cFo4NVlMalF1SmpwdXM0aDdnSXRxS3NmUVVDSUI2M2ZNdzFBMm5OVWU1TgpIUGZOcEQwSEtwcVN0Wnk4djIyVzliYlJUNklZCi0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0KLS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUJlRENDQVIyZ0F3SUJBZ0lCQURBS0JnZ3Foa2pPUFFRREFqQWpNU0V3SHdZRFZRUUREQmhyTTNNdFkyeHAKWlc1MExXTmhRREUzTWpNeE1USXdNell3SGhjTk1qUXdPREE0TVRBeE16VTJXaGNOTXpRd09EQTJNVEF4TXpVMgpXakFqTVNFd0h3WURWUVFEREJock0zTXRZMnhwWlc1MExXTmhRREUzTWpNeE1USXdNell3V1RBVEJnY3Foa2pPClBRSUJCZ2dxaGtqT1BRTUJCd05DQUFRc3hXWk9pbnIrcVp4TmFEQjVGMGsvTDF5cE01VHAxOFRaeU92ektJazQKRTFsZWVqUm9STW0zNmhPeVljbnN3d3JoNnhSUnBpMW5RdGhyMzg0S0Z6MlBvMEl3UURBT0JnTlZIUThCQWY4RQpCQU1DQXFRd0R3WURWUjBUQVFIL0JBVXdBd0VCL3pBZEJnTlZIUTRFRmdRVTBYZkVmYXJsZm8zTWhIL3lmemx6Cnl0OWlqbHN3Q2dZSUtvWkl6ajBFQXdJRFNRQXdSZ0loQUxJL2dNYnNMT3MvUUpJa3U2WHVpRVMwTEE2cEJHMXgKcnBlTnpGdlZOekZsQWlFQW1wdjBubjZqN3M0MVI0QzFNMEpSL0djNE53MHdldlFmZWdEVGF1R2p3cFk9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K"
|
KUBE_CERT="LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUJrVENDQVRlZ0F3SUJBZ0lJWUxWNkFPQkdrU1F3Q2dZSUtvWkl6ajBFQXdJd0l6RWhNQjhHQTFVRUF3d1kKYXpOekxXTnNhV1Z1ZEMxallVQXhOekl6TVRFeU1ETTJNQjRYRFRJME1EZ3dPREV3TVRNMU5sb1hEVEkxTURndwpPREV3TVRNMU5sb3dNREVYTUJVR0ExVUVDaE1PYzNsemRHVnRPbTFoYzNSbGNuTXhGVEFUQmdOVkJBTVRESE41CmMzUmxiVHBoWkcxcGJqQlpNQk1HQnlxR1NNNDlBZ0VHQ0NxR1NNNDlBd0VIQTBJQUJGQ2Q1MFdPeWdlQ2syQzcKV2FrOWY4MVAvSkJieVRIajRWOXBsTEo0ck5HeHFtSjJOb2xROFYxdUx5RjBtOTQ2Nkc0RmRDQ2dqaXFVSk92Swp3NVRPNnd5alNEQkdNQTRHQTFVZER3RUIvd1FFQXdJRm9EQVRCZ05WSFNVRUREQUtCZ2dyQmdFRkJRY0RBakFmCkJnTlZIU01FR0RBV2dCVFJkOFI5cXVWK2pjeUVmL0ovT1hQSzMyS09XekFLQmdncWhrak9QUVFEQWdOSUFEQkYKQWlFQTArbThqTDBJVldvUTZ0dnB4cFo4NVlMalF1SmpwdXM0aDdnSXRxS3NmUVVDSUI2M2ZNdzFBMm5OVWU1TgpIUGZOcEQwSEtwcVN0Wnk4djIyVzliYlJUNklZCi0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0KLS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUJlRENDQVIyZ0F3SUJBZ0lCQURBS0JnZ3Foa2pPUFFRREFqQWpNU0V3SHdZRFZRUUREQmhyTTNNdFkyeHAKWlc1MExXTmhRREUzTWpNeE1USXdNell3SGhjTk1qUXdPREE0TVRBeE16VTJXaGNOTXpRd09EQTJNVEF4TXpVMgpXakFqTVNFd0h3WURWUVFEREJock0zTXRZMnhwWlc1MExXTmhRREUzTWpNeE1USXdNell3V1RBVEJnY3Foa2pPClBRSUJCZ2dxaGtqT1BRTUJCd05DQUFRc3hXWk9pbnIrcVp4TmFEQjVGMGsvTDF5cE01VHAxOFRaeU92ektJazQKRTFsZWVqUm9STW0zNmhPeVljbnN3d3JoNnhSUnBpMW5RdGhyMzg0S0Z6MlBvMEl3UURBT0JnTlZIUThCQWY4RQpCQU1DQXFRd0R3WURWUjBUQVFIL0JBVXdBd0VCL3pBZEJnTlZIUTRFRmdRVTBYZkVmYXJsZm8zTWhIL3lmemx6Cnl0OWlqbHN3Q2dZSUtvWkl6ajBFQXdJRFNRQXdSZ0loQUxJL2dNYnNMT3MvUUpJa3U2WHVpRVMwTEE2cEJHMXgKcnBlTnpGdlZOekZsQWlFQW1wdjBubjZqN3M0MVI0QzFNMEpSL0djNE53MHdldlFmZWdEVGF1R2p3cFk9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K"
|
||||||
KUBE_DATA="LS0tLS1CRUdJTiBFQyBQUklWQVRFIEtFWS0tLS0tCk1IY0NBUUVFSU5ZS1BFb1dhd1NKUzJlRW5oWmlYMk5VZlY1ZlhKV2krSVNnV09TNFE5VTlvQW9HQ0NxR1NNNDkKQXdFSG9VUURRZ0FFVUozblJZN0tCNEtUWUx0WnFUMS96VS84a0Z2Sk1lUGhYMm1Vc25pczBiR3FZblkyaVZEeApYVzR2SVhTYjNqcm9iZ1YwSUtDT0twUWs2OHJEbE03ckRBPT0KLS0tLS1FTkQgRUMgUFJJVkFURSBLRVktLS0tLQo="
|
KUBE_DATA="LS0tLS1CRUdJTiBFQyBQUklWQVRFIEtFWS0tLS0tCk1IY0NBUUVFSU5ZS1BFb1dhd1NKUzJlRW5oWmlYMk5VZlY1ZlhKV2krSVNnV09TNFE5VTlvQW9HQ0NxR1NNNDkKQXdFSG9VUURRZ0FFVUozblJZN0tCNEtUWUx0WnFUMS96VS84a0Z2Sk1lUGhYMm1Vc25pczBiR3FZblkyaVZEeApYVzR2SVhTYjNqcm9iZ1YwSUtDT0twUWs2OHJEbE03ckRBPT0KLS0tLS1FTkQgRUMgUFJJVkFURSBLRVktLS0tLQo="
|
||||||
|
|||||||
Reference in New Issue
Block a user