blog-microservices

(★ 199)

A blog microservices written in Golang, which can be deployed in an Istio-enabled kubernetes cluster.

  • .gitignore
  • buf.gen.yaml
  • buf.lock
  • buf.yaml
  • go.mod
  • go.sum
  • LICENSE
  • Makefile
  • README-zh.md
  • README.md

# 설치 가이드

1. 코드 내려받기
git clone https://github.com/jxlwqq/blog-microservices

깃허브에서 프로젝트 코드 전체를 내 컴퓨터로 내려받습니다.

cd blog-microservices

방금 내려받은 프로젝트 폴더 안으로 이동합니다.

2. 공식 설치 스크립트

쉬움 추천
사전 준비물
  • Homebrew macOS/Linux용 패키지 매니저입니다.
brew install go

Homebrew로 이미 빌드된 패키지를 바로 설치합니다. 소스 빌드가 필요 없습니다.

brew install mysql

Homebrew로 이미 빌드된 패키지를 바로 설치합니다. 소스 빌드가 필요 없습니다.

brew install protobuf

Homebrew로 이미 빌드된 패키지를 바로 설치합니다. 소스 빌드가 필요 없습니다.

brew install bufbuild/buf/buf

Homebrew로 이미 빌드된 패키지를 바로 설치합니다. 소스 빌드가 필요 없습니다.

설치 후 새 터미널을 열고, 프로그램의 버전 확인 명령(예: --version)으로 정상 설치됐는지 확인하세요.

이 레포의 README에 적힌 실제 명령어를 그대로 가져왔습니다.

3. Docker

쉬움
사전 준비물
  • Git GitHub에서 프로젝트 코드를 내려받으려면 필요합니다.
  • Docker Desktop 컨테이너를 빌드하고 실행하려면 필요합니다. 설치 후 실행해서 백그라운드에 켜두세요.
kubectl config use-context docker-desktop

이 명령어를 터미널에 그대로 입력해 실행하세요.

make docker-build

생성된 빌드 설정을 바탕으로 실제 컴파일을 진행해 실행 파일을 만듭니다.

kube-system etcd-docker-desktop 1/1 Running 13 13d

이 명령어를 터미널에 그대로 입력해 실행하세요.

kube-system kube-apiserver-docker-desktop 1/1 Running 13 13d

이 명령어를 터미널에 그대로 입력해 실행하세요.

kube-system kube-controller-manager-docker-desktop 1/1 Running 13 13d

이 명령어를 터미널에 그대로 입력해 실행하세요.

터미널에 docker compose ps 를 입력해 컨테이너들이 Up 상태인지 확인하세요. README에 포트 번호가 적혀있다면 브라우저에서 http://localhost:포트번호 로 접속해보세요.

이 레포의 README에 적힌 실제 명령어를 그대로 가져왔습니다.

4. Go

보통
사전 준비물
  • Git GitHub에서 프로젝트 코드를 내려받으려면 필요합니다.
  • Go Go 언어 컴파일러 및 도구 모음입니다.
go build ./...

Go 프로그램을 컴파일해 실행 파일을 만듭니다.

go run .

따로 빌드하지 않고 바로 Go 프로그램을 실행합니다.

빌드가 에러 없이 끝나면 성공입니다. go run . 을 썼다면 터미널 출력을 확인하세요.

5. Make

보통
사전 준비물
  • Git GitHub에서 프로젝트 코드를 내려받으려면 필요합니다.
  • Make Linux/macOS는 보통 기본 설치되어 있습니다. Windows는 별도 설치(예: MSYS2, WSL)가 필요합니다.
make docker-build

생성된 빌드 설정을 바탕으로 실제 컴파일을 진행해 실행 파일을 만듭니다.

make kube-deploy

생성된 빌드 설정을 바탕으로 실제 컴파일을 진행해 실행 파일을 만듭니다.

에러 없이 끝나면 성공입니다. 생성된 실행 파일을 직접 실행해보세요.

이 레포의 README에 적힌 실제 명령어를 그대로 가져왔습니다.

// repository documentation