인프런 커뮤니티 질문&답변

김형준님의 프로필 이미지
김형준

작성한 질문수

개발자를 위한 쉬운 도커

강의 실습 프로젝트 git clone은 못하나요?

해결된 질문

작성

·

32

1

파트 9. 도커 실무에 적용하기 듣고 있는대요.

강의 중에 vscode로 실습하시는 파일을 저도 git clone하고싶은대, 강의자료나, 강의 내용에도 없고,

따로 clone하지마시라고 하신걸까요?

스크래치 빌드하는강의 듣고있네요.

답변 2

0

데브위키님의 프로필 이미지
데브위키
지식공유자

김형준님 안녕하세요. 데브위키입니다.

 

혹시 go로 개발된 웹 애플리케이션을 말씀하시는 걸까요?

 

간단한 코드라 답변으로 공유 드립니다!

package main

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

func main() {
	http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
		myVar := os.Getenv("WEBAPP_VAR")
		if myVar == "" {
			fmt.Fprintf(w, "환경변수가 설정되어 있지 않습니다.")
		} else {
			// 환경변수 값이 설정되어 있다면 그 값을 출력
			fmt.Fprintf(w, "WEBAPP_VAR 환경변수는 %s 입니다.", myVar)
		}

		log.Println("Received request")
	})

	log.Println("This is GO-WEB-APPLICATION")
	log.Println("INFO: Application is initializing...")
	log.Println("INFO: Configuration files are being read...")
	log.Println("WARN: Debug mode is enabled.")
	log.Println("DEBUG: Verbose logging is activated for debugging.")
	log.Println("WARN: Example warning message.")
	log.Println("WARN: Another warning, maybe related to configuration.")
	log.Println("INFO: Starting server on port 8080...")
	log.Println("INFO: Server is ready to receive requests.")
	log.Println("INFO: Listening for connections...")
	log.Println("INFO: Health checks are running.")
	log.Println("INFO: WEBAPP_VAR 환경변수는 "+os.Getenv("WEBAPP_VAR")+" 입니다.")


	log.Println("Starting server on :8080")
	if err := http.ListenAndServe(":8080", nil); err != nil {
		log.Fatal("Error starting server: ", err)
	}
}

애플리케이션을 빌드하실때는 go를 설치하시거나, 아래 도커파일로 컨테이너 내부에서 빌드하신 후 CP명령으로 가지고 올 수 있습니다

FROM golang:1.18 
WORKDIR /app
COPY . .
RUN go mod init example.com/myapp || echo "Go mod init skipped"
RUN GOOS=windows GOARCH=amd64 go build -o go-web-application-windows.exe .
RUN GOOS=darwin GOARCH=amd64 go build -o go-web-application-macos .
RUN GOOS=linux GOARCH=amd64 go build -o go-web-application-linux .

 

강의 들으시면서 더 궁금하신 부분이 있으면 편하게 질문해주세요!

0

안녕하세요, 인프런 AI 인턴입니다.
김형준님, 현재 듣고 계신 강의에서 실습 프로젝트를 git clone할 수 있는 방법에 대한 언급이 없으셨군요. 일반적으로 강의 자료는 강의 내 제공되는 아이콘을 통해 다운로드할 수 있도록 되어 있습니다. 강의자료로 제공되지 않은 파일이라면 따로 git clone을 허가받지 않은 경우가 많습니다.

강의자료가 제공되지 않은 것에 대한 확인은 강의 동영상을 클릭 후 상단 바 혹은 목차에서 구름 아이콘을 통해 가능하니, 한 번 더 확인해 보시기 바랍니다.

기타 정보가 필요하시거나 답변이 도움이 되지 않았을 경우, 인프런의 문의하기를 통해 직접 문의하시면 더 빠르고 정확한 답변을 들으실 수 있을 것입니다.

감사합니다!
인프런 FAQ

김형준님의 프로필 이미지
김형준

작성한 질문수

질문하기