K8s-training: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
(18 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
* URL https://appName-nameSpace.wildcardDomain | |||
== YOURS VARS == | == YOURS VARS == | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
export | export wildcardDomain= | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Line 8: | Line 8: | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
echo "== INIT ENV ==" | echo "== INIT ENV ==" | ||
export appName=wiki | export appName=wiki-demo | ||
hostName=${appName}.${wildcardDomain} | |||
hostName=${appName | appInternalPassword=$(echo -n ${hostName} |base64 -w0 ) | ||
appInternalPassword=${hostName} | |||
helm repo add bitnami https://charts.bitnami.com/bitnami | helm repo add bitnami https://charts.bitnami.com/bitnami | ||
mkdir -p ~/old | mkdir -p ~/old | ||
Line 20: | Line 19: | ||
--set ingress.enabled=true,ingress.hostname=${hostName} \ | --set ingress.enabled=true,ingress.hostname=${hostName} \ | ||
--set mariadb.auth.rootPassword=${appInternalPassword},mariadb.auth.password=${appInternalPassword} \ | --set mariadb.auth.rootPassword=${appInternalPassword},mariadb.auth.password=${appInternalPassword} \ | ||
--set mediawikiHost=${hostName},mediawikiPassword=${appInternalPassword} |grep -vw namespace |tee ~/old/${hostName} | --set mediawikiHost=${hostName},mediawikiPassword=${appInternalPassword} |grep -vw namespace |tee ~/old/${hostName}.yaml | ||
echo "== DEPLOY ==" | echo "== DEPLOY ==" | ||
kubectl | [ ! -z "$(which oc)" ] &&oc get ns |grep default >/dev/null &&oc new-project $wildcardDomain | ||
oc adm policy add-scc-to-user privileged -z | kubectl apply -f ~/old/${hostName}.yaml | ||
oc create route edge --service | echo "== FIX OPENSHIFT SOLUTION ==" | ||
if [ ! -z "$(which oc)" ] ;then | |||
for sa in $(oc get sa -o jsonpath="{.items[*].metadata.name}") | |||
do | |||
oc adm policy add-scc-to-user privileged -z ${sa} | |||
done | |||
oc create route edge --service=${appName}-mediawiki --hostname=${hostName} 2>/dev/null | |||
fi | |||
echo "== YOURS URL ==" | echo "== YOURS URL ==" | ||
echo https://${hostName} | echo https://${hostName} | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== DELETE == | == DELETE == | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
kubectl delete -f ~/old/${hostName} | oc delete route ${appName}-mediawiki 2>/dev/null #FIX OPENSHIFT SOLUTION | ||
kubectl delete -f ~/old/${hostName}.yaml | |||
echo "== DELETE REMAINING DB ==" | echo "== DELETE REMAINING DB ==" | ||
kubectl delete pvc/data-${appName}-mariadb-0 | |||
kubectl delete pvc/data-${appName}-mariadb-0 | |||
</syntaxhighlight> | </syntaxhighlight> |
Latest revision as of 20:35, 25 December 2023
YOURS VARS
export wildcardDomain=
DEPLOY
echo "== INIT ENV =="
export appName=wiki-demo
hostName=${appName}.${wildcardDomain}
appInternalPassword=$(echo -n ${hostName} |base64 -w0 )
helm repo add bitnami https://charts.bitnami.com/bitnami
mkdir -p ~/old
echo "== INFRA =="
clear
helm template ${appName} bitnami/mediawiki \
--set ingress.enabled=true,ingress.hostname=${hostName} \
--set mariadb.auth.rootPassword=${appInternalPassword},mariadb.auth.password=${appInternalPassword} \
--set mediawikiHost=${hostName},mediawikiPassword=${appInternalPassword} |grep -vw namespace |tee ~/old/${hostName}.yaml
echo "== DEPLOY =="
[ ! -z "$(which oc)" ] &&oc get ns |grep default >/dev/null &&oc new-project $wildcardDomain
kubectl apply -f ~/old/${hostName}.yaml
echo "== FIX OPENSHIFT SOLUTION =="
if [ ! -z "$(which oc)" ] ;then
for sa in $(oc get sa -o jsonpath="{.items[*].metadata.name}")
do
oc adm policy add-scc-to-user privileged -z ${sa}
done
oc create route edge --service=${appName}-mediawiki --hostname=${hostName} 2>/dev/null
fi
echo "== YOURS URL =="
echo https://${hostName}
DELETE
oc delete route ${appName}-mediawiki 2>/dev/null #FIX OPENSHIFT SOLUTION
kubectl delete -f ~/old/${hostName}.yaml
echo "== DELETE REMAINING DB =="
kubectl delete pvc/data-${appName}-mariadb-0