export PROJECT_ID=$(gcloud config get-value project)
export PROJECT_NUMBER=$(gcloud projects describe $PROJECT_ID --format='value(projectNumber)')
export REGION=us-central1
gcloud config set compute/region $REGION
gcloud services enable \
cloudresourcemanager.googleapis.com \
container.googleapis.com \
artifactregistry.googleapis.com \
containerregistry.googleapis.com \
containerscanning.googleapis.com
gcloud 명령어를 사용하여 여러 Google Cloud 서비스를 활성화(Enable)하는 명령어입니다. 각 서비스는 특정한 역할을 수행하며, 이 명령어는 해당 서비스들을 활성화하여 사용할 수 있도록 준비합니다.
여기서 사용된 각 서비스와 해당 역할에 대한 간단한 설명은 다음과 같습니다:
cloudresourcemanager.googleapis.com:
Google Cloud Platform의 리소스 계층을 관리하는 서비스입니다. 프로젝트, 폴더, 조직과 같은 계층적 구조의 리소스를 생성하고 관리하는 데 사용됩니다.
container.googleapis.com:
Google Kubernetes Engine (GKE)를 사용하여 컨테이너화된 애플리케이션을 실행하는 서비스입니다. Kubernetes 클러스터를 만들고 관리하는 데 사용됩니다.
artifactregistry.googleapis.com:
Google Artifact Registry를 사용하여 Docker 이미지와 Maven, npm 등의 패키지를 저장하는 서비스입니다. 개발자들이 소프트웨어 패키지를 중앙 저장소에 저장하고 공유할 수 있도록 지원합니다.
containerregistry.googleapis.com:
Google Container Registry를 사용하여 Docker 이미지를 저장하는 서비스입니다. Docker 이미지를 저장하고 관리하는 데 사용됩니다.
containerscanning.googleapis.com:
Google Container Analysis API를 사용하여 컨테이너 이미지에 대한 취약점 스캔과 이미지에 대한 보안 검사를 수행하는 서비스입니다.
이렇게 서비스를 활성화하는 것은 해당 서비스를 사용할 수 있도록 하는 단계입니다. 이 명령어를 실행하면 프로젝트에 대한 각 서비스가 활성화되고, 해당 서비스를 사용할 수 있게 됩니다.
git clone https://github.com/GoogleCloudPlatform/cloud-code-samples/
cd ~/cloud-code-samples
gcloud artifacts repositories create container-dev-repo --repository-format=docker \
--location=$REGION \
--description="Docker repository for Container Dev Workshop" # repo 저장소만드는 코드
gcloud auth configure-docker $REGION-docker.pkg.dev
docker build -t us-central1-docker.pkg.dev/$PROJECT_ID/container-dev-repo2/java-hello-world:tag1 .
docker push us-central1-docker.pkg.dev/$PROJECT_ID/container-dev-repo2/java-hello-world:tag1
docker build -t $REGION-docker.pkg.dev/$PROJECT_ID/container-dev-repo/java-hello-world:tag1 .
docker push $REGION-docker.pkg.dev/$PROJECT_ID/container-dev-repo/java-hello-world:tag1
docker images rm [Docker Image ID]
docker image rm $(docker images -q) #모든 이미지 삭제
docker pull $REGION-docker.pkg.dev/$PROJECT_ID/container-dev-repo/java-hello-world:tag1