공식 홈페이지 접속 후 다운로드 (M2 pro 기준 Apple macOS (ARM 64)를 다운)
go version을 통한 설치 확인
go version
에러 발생 시
go verison
을 입력했을 때, zsh: command not found: go
가 출력된다면, 환경변수를 추가해야 합니다.
// 파일 열기
vim ~/.zshrc
// 환경변수 등록
export GOROOT="/usr/local/go"
export GOPATH=$GOROOT/gopath
export GOBIN=$GOPATH/bin
export PATH=${PATH}:$GOROOT/bin
export PATH=${PATH}:$GOBIN
// 파일 저장
:wq!
// 변경사항 적용
source ~/.zshrc
// 환경변수 등록여부 확인
echo $GOROOT
echo $GOPATH
echo $GOBIN
희한하게 한 번씩
go @@@
가 정상적으로 작동하지 않는 경우가 있다. 개인적인 문제일 수 있지만, 이럴 때는source /.zshrc
를 활용하면 다시 잡히는 것을 확인했다.
Go는 Go가 위치한 경로의 하단에서 프로젝트를 생성 및 관리해야 한다.
필자 기준, /usr/local/go에 위치하고 있으므로 해당 디렉토리 내에서 프로젝트를 생성해야 한다.
해당 경로로 이동하고 나면, permission denied
가 발생할 확률이 높다. 이를 예방하기 위해 임의적으로 해당 경로에 한해 sudo를 사용하지 않아도 되도록 권한을 부여해주었다.
sudo chown -R {USER_NAME} /usr/local/go
/usr/local/go/src 하단에서 프로젝트명을 기반으로 디렉토리를 생성한다.
go.mod는 외부 패키지를 가져오기 용이하기 위해 만들어졌다. 다양한 패키지를 가져와서 사용해야 하므로, 서버 개발을 위해선 필요하다고 판단되어 미리 go.mod를 만들었다.
2번에서 만든 프로젝트 경로에서 아래의 명령어를 실행하여 go.mod 파일을 생성하면 된다.
(모듈명은 기재하지 않아도 된다.)
go mod init {MODULE_NAME}
package main
import "fmt"
func main() {
fmt.Println("Hello World!")
}
위와 같이 파일을 작성한 후, 아래의 명령어를 실행하면 정상적으로 파일이 실행되는 것을 볼 수 있다.
go run main.go
다음으로는 Go의 프레임워크, ORM의 종류와 어떤 걸 선택하게 되었는지를 정리해볼 예정이다.
참고자료