rancher rest api image update
workload 화면 우측의 view in api 에서 work load 주소 획득
https://{rancher api}/v3/project/{projectId}/workloads/deployment:{namespace}:{resourcename}
수정시 put (생성시 post)
- url: https://{rancher api}/v3/project/{projectId}/workloads/deployment:{namespace}:{resourcename}
payload
{
"containers": [
{
"image": "{imageUrl}",
"name": "{containerName}"
}
]
}
Header
"Authorization: Basic {token}"
or
"Authentication: Bearer username:token"
-u "username:password"
위 업데이트 사용시 속성이 삭제됨
Jenkins의 Rancher plugin을 사용하면 됨
rancherRedeploy alwaysPull: true, credential: 'rancher', images: 'ubuntu:eoan', workload: '/project/c-kqlz6:p-qn92x/workloads/deployment:default:test'
image가 tag 만 바뀌는 듯
위 업데이트를 kubectl로 실행시
kubectl set image kubectl set image deployment {resourcename} {containerName}={imageUrl}
kubectl 사용시 위 명령어를 실행하기 전에 context 세팅 (cluster를 이동 하며 사용시)
- .kube에 context세팅
- kubectl config use-context {context name}
namespace 설정 하는 절차 필요
- kubectl config set-context --current --namespace={namespace}