blog-microservices
A blog microservices written in Golang, which can be deployed in an Istio-enabled kubernetes cluster.
파일 탐색기
최종 버전 다운로드 (.zip)- lint.yml
- test.yaml
- auth.pb.go
- auth.pb.gw.go
- auth.proto
- auth.swagger.json
- auth_grpc.pb.go
- blog.pb.go
- blog.pb.gw.go
- blog.proto
- blog.swagger.json
- blog_grpc.pb.go
- comment.pb.go
- comment.pb.gw.go
- comment.proto
- comment.swagger.json
- comment_grpc.pb.go
- post.pb.go
- post.pb.gw.go
- post.proto
- post.swagger.json
- post_grpc.pb.go
- user.pb.go
- user.pb.gw.go
- user.proto
- user.swagger.json
- user_grpc.pb.go
- architecture.drawio
- architecture.png
- bloom-rpc-create-post.png
- bloom-rpc-sign-up.png
- kiali-console.png
- Dockerfile
- Dockerfile
- Dockerfile
- Dockerfile
- Dockerfile
- main.go
- wire.go
- wire_gen.go
- main.go
- wire.go
- wire_gen.go
- main.go
- wire.go
- wire_gen.go
- main.go
- wire.go
- wire_gen.go
- main.go
- wire.go
- wire_gen.go
- config.yaml
- prometheus-operator.yaml
- prometheus_vm.yaml
- prometheus_vm_tls.yaml
- skywalking.yaml
- zipkin.yaml
- grafana.yaml
- jaeger.yaml
- kiali.yaml
- loki.yaml
- prometheus.yaml
- README.md
- server.yaml
- server.yaml
- mysql.yaml
- server.yaml
- mysql.yaml
- server.yaml
- mysql.yaml
- server.yaml
- mysql.yaml
- server.yaml
- config.yaml
- istio.yaml
- client.go
- client_test.go
- server.go
- server_test.go
- server.go
- server_test.go
- client.go
- client_test.go
- entity.go
- repository.go
- repository_test.go
- server.go
- server_test.go
- config.go
- config_test.go
- db.go
- db_test.go
- auth.go
- auth_test.go
- manager.go
- manager_test.go
- logger.go
- logger_test.go
- client.go
- client_test.go
- entity.go
- repository.go
- repository_test.go
- server.go
- server_test.go
- client.go
- client_test.go
- entity.go
- repository.go
- repository_test.go
- server.go
- server_test.go
- 000001_create_comments_table.down.sql
- 000001_create_comments_table.up.sql
- 000001_create_posts_table.down.sql
- 000001_create_posts_table.up.sql
- 000001_create_users_table.down.sql
- 000001_create_users_table.up.sql
- mock_auth_grpc.pb.go
- mock_comment_grpc.pb.go
- mock_post_grpc.pb.go
- mock_user_grpc.pb.go
- tools.go
- .gitignore
- buf.gen.yaml
- buf.lock
- buf.yaml
- go.mod
- go.sum
- LICENSE
- Makefile
- README-zh.md
- README.md
# 설치 가이드
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로 이미 빌드된 패키지를 바로 설치합니다. 소스 빌드가 필요 없습니다.
이 레포의 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
이 명령어를 터미널에 그대로 입력해 실행하세요.
이 레포의 README에 적힌 실제 명령어를 그대로 가져왔습니다.
4. Go
보통go build ./...
Go 프로그램을 컴파일해 실행 파일을 만듭니다.
go run .
따로 빌드하지 않고 바로 Go 프로그램을 실행합니다.
5. Make
보통- Git GitHub에서 프로젝트 코드를 내려받으려면 필요합니다.
- Make Linux/macOS는 보통 기본 설치되어 있습니다. Windows는 별도 설치(예: MSYS2, WSL)가 필요합니다.
make docker-build
생성된 빌드 설정을 바탕으로 실제 컴파일을 진행해 실행 파일을 만듭니다.
make kube-deploy
생성된 빌드 설정을 바탕으로 실제 컴파일을 진행해 실행 파일을 만듭니다.
이 레포의 README에 적힌 실제 명령어를 그대로 가져왔습니다.
