Manages hardware and software.
Create a cluster using Oracle's GUI
Setup keys and Oracle CLI (oci) once.
Download kubeconfig file for kubectl
$: kubectl get nodes # ->
# NAME STATUS ROLES AGE VERSION
# Node-Name Ready ... ... ...
$: kubectl get node Node-Name -o=jsonpath='{range .status.addresses[*]}{.type}{"\t"}{.address}{"\n"}' # ->
# InternalIP Node-Name
# ExternalIP Node-Ip OR Kubectl-Server-Ip # exists if VPN is public
Steps:
- configure access to the cluster
- Deploy the Dashboard
$: kubectl apply -f oke-admin-service-account.yaml # see Research
$: kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep oke-admin | awk '{print $1}') # copy Bearer Token in `token:`
$: kubectl proxy
# Note: visit http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/
Each region has a unique Registry endpoint.
Germany Central (Frankfurt):
https://eu-frankfurt-1.ocir.io
https://fra.ocir.io
Profile -> User Settings -> Auth Tokens -> Generate Token -> fill in information -> Generate Token
Servers as a docker login password.
Solutions and Platform -> Developer Services -> Registry -> Create Repository -> Add Repository -> fill in info
$: docker login Registry-Endpoint.ocir.io # ->
# Username: Tenancy-Object-Storage-Namespace/Tenancy-Username
# Password: Auth-Token
$: docker tag Image-Name:Image-Tag Registry-Endpoint.ocir.io/Tenancy-Object-Storage-Namespace/Registry-Name/Image-Name:Image-Tag
$: docker push Registry-Endpoint.ocir.io/Tenancy-Object-Storage-Namespace/Registry-Name/Image-Name:Image-Tag
$: docker pull Registry-Endpoint.ocir.io/Tenancy-Object-Storage-Namespace/Registry-Name/Image-Name:Image-Tag
$: kubectl create secret docker-registry Pull-Secret-Name --docker-server=Registry-Endpoint.ocir.io --docker-username='Tenancy-Object-Storage-Namespace/Tenancy-Username' --docker-password='Auth-Token' --docker-email='Contact-Email'
...
spec:
containers:
- name: Container-Name
image: Registry-Endpoint.ocir.io/Tenancy-Object-Storage-Namespace/Registry-Name/Image-Name:Image-Tag
...
imagePullSecrets:
- name: Pull-Secret-Name