Configuring a Gcr.io Registry
You can use gcr.io as registry to host Camel K images. Usually, users may want to use gcr.io in combination with Google GKE.
In order to push images to
gcr.io, you need to provide a valid key to Camel K. The best way to obtain a valid key is from the Google web console:
Make sure the project where you created the Kubernetes cluster is selected in the drop-down list
To avoid confusion, it’s suggested to use the "English" language in preferences of the Google Cloud console
Select "IAM & admin" from the navigation menu, then "Service accounts"
Create a new service account specifying the following id: "camel-k-builder"
You’ll be asked to select a role. It’s important to select the "Storage Admin" role from the "Storage" menu
Finish creating the service account
From the action menu of the service account you’ve created, create a key using the JSON format
.json file with the key will be downloaded to your machine. You need to store that key in a Kubernetes secret.
It’s important to rename the file you’ve just downloaded to
kaniko-secret.json (make sure you write it correctly). After the renaming, execute the following command to create the secret:
kubectl create secret generic kaniko-secret --from-file=kaniko-secret.json
Ensure you have the kamel CLI on your system path.
You should now execute the following command to install cluster resources and the operator (in the current namespace):
kamel install --build-publish-strategy=Kaniko --registry gcr.io --organization <<your-project-id>> --registry-secret kaniko-secret
Use the project id of your project on GKE. Usually this can be obtained from the connection string.
|the project id is NOT the cluster id!|