본문 바로가기

전체 글15

Kaniko Kaniko로 docker 없이 컨테이너 이미지 빌드하기 클라우드 내에서 이미지 빌드의 문제점 권한 문제 클라우드 내부에서 도커 이미지를 빌드한다는 것은 이미지 내부에서 이미지를 빌드한다는 의미와 같다. 일반적으로 도커 이미지를 빌드하기 위해서는 도커 데몬이 필요하고, 도커 데몬은 도커의 수행환경으로써 리눅스의 root 권한을 필요로 한다. 그러나 컨테이너 환경의 유저에게 일반적으로 root 권한을 부여하지는 않는다. 도커 데몬의 권한에 대한 문제는 도커 보안 문서(https://docs.docker.com/engine/security/)에도 설명되어 있듯 신뢰할 수 있는 사용자에 국한하고 있다. 쿠버네티스 또한 컨테이너를 무분별하게 root 권한으로 수행하는 것을 방지하기 위하여 가이드를 제공하고 있다.. 2023. 5. 23.
Harbor Private registry 프라이빗한 도커 허브 느낌 Helm #helm install curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 chmod 700 get_helm.sh ./get_helm.sh ingress-controller helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx helm repo update # ingress-controller helm install ingress-nginx ingress-nginx/ingress-nginx \ --set controller.service.annotat.. 2023. 5. 23.
ArgoCD Image Updater (현재 Beta 버전) Argo CD Image Updater는 Argo CD에서 관리하는 Kubernetes 워크로드의 컨테이너 이미지를 자동으로 업데이트하는 도구입니다. 간단히 말해서 Argo CD 애플리케이션 리소스의 주석으로 지정된 이미지 버전을 추적하고 Argo CD API를 사용하여 매개변수 재정의를 설정하여 업데이트합니다. 현재 Kustomize 또는 Helm 도구를 사용하여 빌드된 애플리케이션에서만 작동합니다 . 일반 YAML 또는 사용자 정의 도구로 빌드된 애플리케이션은 아직 지원되지 않습니다(아마도 지원되지 않을 수도 있음). ArgoCD Image Updater를 사용하려면 Kustomize/Helm Chart를 사용해야 한다. Kustomize base/kustomization.yaml resources:.. 2023. 2. 24.
Helm chart / kustomize Helm chart / kustomize : 쿠버네티스에 애플리케이션을 배포할 때 쿠버네티스 리소스를 하나하나 작성해야 하지만 그것을 편리하게 해주는 방식들을 말합니다. 같은 애플리케이션을 test와 staging에 배포하기 위한 리소스들은 보통 90% 이상 그 정의가 동일합니다. 그렇지만 서로 다른 DB 주소를 가리켜야 하는 등의 일부 자그마한 수정 작업은 또 필요하죠. 우리 모두는 코드를 중복해서 쓰는 것이 매우 나쁜 일이라고 배웠습니다. 그렇기 때문에, 90% 이상의 동일한 항목은 한 번만, 그러나 변경이 필요한 일부 항목은 변경해줄 수 있는 시스템을 희망하곤 합니다. Helm은 템플릿 방식을 이용해 이 문제를 해결합니다. 그저 필요한 쿠버네티스 정의들을 여느 때처럼 작성해주면 됩니다. 배포 A와 .. 2023. 2. 24.
잘 알려진 공격 패턴 운영체제 파일명 LINUX 파일 /bin/login, /bin/passwd, /etc/*.conf, /usr/bin, /usr/sbin, /bin, /sbin, /boot, /usr/local/bin, /usr/local/sbin, /opt/bin, /opt/sbin, /etc/crontab, /etc/init.d, /etc/cron.hourly, /etc/cron.daily, /etc/cron.weekly, /etc/cron.monthly WINDOWS 파일 C:\autoexec.bat, C:\boot.ini, C:\config.sys, C:\Windows\system.ini, C:\Windows\win.ini, C:\Windows\regedit.exe, C:\Windows\System32\userin.. 2023. 2. 2.
CI/CD (Argo CD) Argo CD 설치 kubectl create namespace argocd kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml kubectl get all -n argocd kubectl patch svc argocd-server -n argocd -p '{"spec": {"type": "LoadBalancer"}}' # 암호 찾기 kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d; echo Repositories 설정 New Appli.. 2023. 1. 31.