...
https://developer.ibm.com/learningpaths/secure-context-constraints-openshift/scc-tutorial/
Steps
Login and create our demo project
Code Block |
---|
|
oc login -u kubeadmin https://api.crc.testing:6443
oc new-project demo
oc project demo
|
Apply our default deployment
Code Block |
---|
|
git clone https://github.com/IBM/scc-tutorial-assets.git
cd scc-tutorial-assets
oc apply -f deploy_default.yaml |
See what SCC was applied using the describe command:
Code Block |
---|
|
oc get pod/scc-tutorial-deploy-default-58db6b6f58-ww54l -o yaml |
Code Block |
---|
apiVersion: v1
kind: Pod
metadata:
annotations:
openshift.io/scc: restricted-v2
...
spec:
containers:
- command:
- sh
- -c
- echo "Hello from user $(id -u)" && sleep infinity
image: ubi8/ubi-minimal
imagePullPolicy: Always
name: ubi-minimal
resources: {}
securityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- ALL
runAsNonRoot: true
runAsUser: 1000660000
...
securityContext:
fsGroup: 1000660000
seLinuxOptions:
level: s0:c26,c5
seccompProfile:
type: RuntimeDefault
serviceAccount: default
serviceAccountName: default
... |
In the above we can see the following values were applied:
Code Block |
---|
openshift.io/scc: restricted-v2 |
Code Block |
---|
securityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- ALL
runAsNonRoot: true
runAsUser: 1000660000 |
Code Block |
---|
securityContext:
fsGroup: 1000660000
seLinuxOptions:
level: s0:c26,c5
seccompProfile:
type: RuntimeDefault |
Code Block |
---|
serviceAccount: default
serviceAccountName: default |
Login to the POD
Code Block |
---|
|
oc rsh pod/scc-tutorial-deploy-default-58db6b6f58-ww54l
or
kubectl -n demo exec -it pod/scc-tutorial-deploy-default-58db6b6f58-ww54l bash |
References
...