volumes:
- $SCRIPTS_PATH:/opt/primekey/scripts
command: bash -c "
- ./scripts/ejbca-configuration.sh &
/opt/primekey/bin/start.sh
"
healthcheck:
test: ["CMD-SHELL", "curl -kI https://localhost:8443/ejbca/publicweb/healthcheck/ejbcahealth"]
- interval: 10s
+ interval: 20s
timeout: 3s
retries: 9
networks:
docker-compose up -d
-AAFCERT_IP=`get-instance-ip.sh aafcert`
-export AAFCERT_IP=${AAFCERT_IP}
-
+AAFCERT_IP='none'
# Wait container ready
-sleep 15
+for i in {1..9}
+do
+ AAFCERT_IP=`get-instance-ip.sh aafcert`
+ RESP_CODE=$(curl -I -s -o /dev/null -w "%{http_code}" http://${AAFCERT_IP}:8080/actuator/health)
+ if [[ "$RESP_CODE" == '200' ]]; then
+ echo 'AAF Cert Service is ready'
+ export AAFCERT_IP=${AAFCERT_IP}
+ docker exec aafcert-ejbca /opt/primekey/scripts/ejbca-configuration.sh
+ break
+ fi
+ echo 'Waiting for AAF Cert Service to start up...'
+ sleep 30s
+done
+if [[ $AAFCERT_IP == 'none' ] || [ $AAFCERT_IP == '' ]]; then
+ echo "AAF Cert Service is not ready!"
+ exit 1 # Return error code
+fi