이 레포는 테커 GoodNight Hackathon 3차를 위해 만들어진 Boilerplate 레포 입니다
- Go 1.23
- Go Gin
- Gorm
- PostgreSQL
- Docker
📦go-gin-example //프로젝트
┣ 📂config //설정 관련 디렉토리(환경변수, 등등..)
┃ ┗ 📜env.go //환경변수 함수 파일
┣ 📂database //데이터베이스 관련 디렉토리
┃ ┗ 📜db.go //디비 관련 함수
┣ 📂handlers //핸들러 디렉토리
┃ ┣ 📜handler.go //핸들러 총괄 파일
┃ ┣ 📜post_handler.go //포스트 관련 핸들러
┃ ┗ 📜user_handler.go //유저 관련 핸들러
┣ 📂models //모델 디렉토리
┃ ┣ 📜post.go //포스트 관련 모델
┃ ┗ 📜user.go //유저 관련 모델
┣ 📂repositories //레포지토리 디렉토리
┃ ┣ 📜post_repository.go //포스트 관련 레포지토리
┃ ┣ 📜respository.go //레포지토리 총괄 파일
┃ ┗ 📜user_repository.go //유저 관련 레포지토리
┣ 📂server //서버 및 라우터 디렉토리
┃ ┣ 📜router.go //라우터 설정
┃ ┗ 📜server.go //서버 시작 관련 파일
┣ 📂services //서비스 레이어 디렉토리
┃ ┣ 📜post_service.go //포스트 관련 서비스
┃ ┣ 📜service.go //서비스 총괄 파일
┃ ┗ 📜user_service.go //유저 관련 서비스
┣ 📜.env //환경변수
┣ 📜.gitignore
┣ 📜Dockerfile //도커파일
┣ 📜LICENSE
┣ 📜README.md
┣ 📜docker-compose.yml //도커 컴포즈 파일. 디비 및 디비 뷰어 포함
┣ 📜go.mod //고 모듈 관리
┣ 📜go.sum //모듈 관리
┗ 📜main.go //실행 시킬 메인 함수 파일
brew install go로 설치 아니면https://go.dev/doc/install에서 설치go env로 설치 확인
- 터미널에
go mod init github.com/<깃허브 이름 아니면 organization 이름>/<레포 이름>으로 하면go.mod와go.sum이 생깁니다. - 패키지 설치를 원하면
go get -u <패키지이름> - 그 외 사용한 패키지를 삭제, 업데이트, 또는 사용된 패키지를 자동으로 설치 하게 하고 싶으면
go mod tidy해주면 됩니다
go mod tidy는 자동으로 소스 코드에 사용되는 라이브러리와go.mod와go.sum을 싱크 해줍니다.