ale을 사용하기 위해서는 20 이상의 Node.js가 설치되어 있어야 합니다.


클러스터 세팅

ale 설치 및 실행

1

다음의 명령어를 입력하여 ale-run 패키지를 설치합니다.

mkdir ale-run
cd ale-run
npm i @ale-run/runtime@latest
2

다음의 명령어를 입력하여 Nginx Ingress Controller를 설치하세요.

kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.11.2/deploy/static/provider/cloud/deploy.yaml
kubectl delete -A ValidatingWebhookConfiguration ingress-nginx-admission
kubectl patch ingressclass nginx --type='merge' -p '{"metadata": {"annotations": {"ingressclass.kubernetes.io/is-default-class": "true"}}}'
3

다음의 명령어를 입력하여 Metrics Server를 설치하세요.

kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml
4

다음의 명령어를 입력하여 ale을 개발 모드로 실행합니다.

npx aled dev
5

ale을 사용하여 서비스를 배포할 클러스터를 선택합니다. 클러스터 목록은 `~/.kube/config` 에 등록된 컨텍스트를 통해 조회됩니다.

? Select the k8s cluster to use. › Select the k8s cluster to use.
    No Cluster
    orbstack
❯   docker-desktop

다음과 같이 로그가 표시되면 실행이 완료된 것입니다.

...
[INFO] [plugin:cloudtype-apps] plugin @cloudtype/apps is installed {}
[INFO] [plugin:cloudtype-apps] plugin @cloudtype/apps is activate {}
[INFO] [pde:init] plugin "@cloudtype/apps" loaded! 
[INFO] [k8s] KubernetesClusterType initialized with agent {"connection":{"context":"docker-desktop","namespace":"ale-pde"},"stat":{"db":{"url":"mongodb://127.0.0.1:64000/","dbName":"ale-pde"}}}
[INFO] [k8s] ConfigContext initialized with {"connection":{"context":"docker-desktop","namespace":"ale-pde"},"stat":{"db":{"url":"mongodb://127.0.0.1:64000/","dbName":"ale-pde"}}}
[INFO] [k8s] connect k8s to "docker-desktop" 
[INFO] [k8s] [agent] cluster agent initialized 
[WARN] [k8s] ConfigMap.get ale-pde agent-config 
[INFO] [pde:agent] Ale Agent is initialized with config  
[INFO] [pde:init] Ale Agent httpsd is listening at 127.0.0.1:9801 
[INFO] [k8s] config loaded from cluster from "ale-pde/agent-config" 
[INFO] [stat] stat controller init {"collector":{"prefix":"ale"},"db":{"url":"mongodb://127.0.0.1:64000/","dbName":"ale-pde"},"connection":{"context":"docker-desktop","namespace":"ale-pde"}}
[INFO] [stat] connect k8s to "docker-desktop" 
[INFO] [stat] stat watcher started 

실행 중 데이터베이스 충돌이 발생하는 경우, 다음의 명령을 입력하여 기존에 생성된 ale 데이터를 삭제 후 재실행하세요.

rm -r ~/.ale-dev  

로컬환경과 GitHub을 연동하면 GitHub 저장소의 소스코드를 배포할 수 있습니다.

대시보드 접속

브라우저의 주소 창에 http://localhost:9001를 입력하면 ale 대시보드에 접속할 수 있습니다. 최초 접속 시, 기본 생성되는 @dev 스페이스로 접속됩니다.

배포

대시보드의 또는 ⌘ + K 로 생성되는 배포창에서 HTTPBin을 선택하세요.

별도의 설정 변경 없이, 배포 설정 창 하단의 배포하기를 클릭하세요.

서비스의 구동이 완료되면 이미지와 같이 실행 중으로 상태가 변경됩니다. 접속하기를 클릭하면 구동된 서비스에 접속할 수 있습니다.

로컬 환경과 GitHub을 연동해 GitHub 저장소를 배포하거나 SSH 인증을 사용하여 비공개 저장소를 배포할 수 있습니다. 일반적인 배포에 관한 가이드는 ale에서 배포하기 페이지를 참고하세요.