AWS EC2 - Golang 세팅

Info/AWS 2023. 3. 15. 23:13 |
728x90

※ 해당 글은 작성자 참고용으로 작성된 글입니다.

 

※ 인스턴스 생성 후 가능합니다.

https://lazeturtle.tistory.com/34

 

AWS EC2 - 인스턴스 생성 및 Putty 연결

※ 해당 글은 작성자 참고용으로 작성된 글입니다. 1. 인스턴스 구축 대시보드 - '인스턴스 시작' 버튼 선택 이름 : 인스턴스 이름(프로젝트명) OS : Linux 키 페어 : IAM을 통해 미리 등록한 사용자 키

lazeturtle.tistory.com

※ VS Code를 연동 후 하는 것을 추천드립니다.

https://lazeturtle.tistory.com/36

 

AWS & VS Code 연동

※ 해당 글은 작성자 참고용으로 작성된 글 입니다. 인스턴스 생성 후 진행 가능 https://lazeturtle.tistory.com/34 AWS EC2 - 인스턴스 생성 및 Putty 연결 ※ 해당 글은 작성자 참고용으로 작성된 글입니다.

lazeturtle.tistory.com


1. EC2 내 Golang 기본 세팅

1) root 계정으로 변경

sudo -s

2) 업데이트

yum update -y

3) Golang 설치

sudo yum install -y golang

4) go 환경 변수 설정

export GOROOT=/usr/lib/golang
export GOPATH=$HOME/(작업 공간)
export PATH=$PATH:$GOROOT/bin

(환경변수 지정 전에 작업 공간에 대한 폴더를 미리 만들어 두세요)

(Linux 폴더 생성 명령어 : mkdir (폴더명))

 

5) go 버전 확인

go version

위 이미지처럼 나온다면 설치 성공

 

2. Golang 테스트

1) main.go 파일 생성

(별도 디렉토리에서 생성하는 것을 추천드려요 - 디렉토리 생성 명령어 : mkdir (디렉토리명))

(파일 및 디렉토리 생성시, root 권한으로 할 경우, 나중에 번거롭습니다.)

touch main.go

 

2) AWS 연동된 VS Code에서 main.go 열기 및 코드 작성

package main

import (
	"fmt"
	"log"
	"net/http"
)

func HomeEndpoint(w http.ResponseWriter, r *http.Request) {
	fmt.Fprintln(w, "Hello world & Hello lazeturtle :)")
}

func main() {
	http.HandleFunc("/", HomeEndpoint)
	if err := http.ListenAndServe(":3000", nil); err != nil {
		log.Fatal(err)
	}
}

 

3) main.go 파일 실행

go run main.go

 

4) 페이지 테스트

URL : (EC2 인스턴스 퍼블릭 IPv4 DNS):3000


실행이 안될 경우,

원인 1. URL에 포트 번호 미입력

URL에 퍼블릭 IPv4 DNS 만 입력 하고 뒤에 :3000 (Port)를 입력하지 않을 경우,

페이지가 보여지지 않을 수 있음

 

원인 2. 인바운드 규칙을 설정하지 않은 경우,

해당 코드는 Port(:3000) 에 대한 페이지를 보여주는데, 인바운드 규칙에 그런 부분이 없을 경우,

페이지가 보여지지 않을 수 있음

그렇기에 인바운드 규칙을 별도로 추가해야만 함!

 

728x90

'Info > AWS' 카테고리의 다른 글

AWS & VS Code 연동  (0) 2023.03.15
AWS EC2 - 인스턴스 생성 및 Putty 연결  (0) 2023.03.15
AWS RDS - MySQL 구축  (0) 2023.03.15
Posted by 게으른거북
: