소개
새로운 기술을 학습하고 전달하는 것을 좋아합니다.
⚡ 클라우드 네이티브 애플리케이션 개발
⚡ 클라우드 인프라 및 파이프라인 설계
⚡ Azure, Docker, Kubernetes, Spring Boot
✉ daintree.henry@gmail.com
강의
수강평
게시글
질문&답변
[섹션2] 강의 화면이 나오지 않습니다.
HYOJU DO님 안녕하세요. 데브위키입니다.제 맥북에서는 화면이 잘 나오는데 혹시 지금도 동일하실까요?!
- 0
- 1
- 18
질문&답변
멀티 스테이지 빌드
김민섭님 안녕하세요. 데브위키입니다.좋은 질문이네요, 싱글스테이지에서 빌드에 사용한 maven:3.6-jdk-11 이미지에는 openjdk가 이미 설치되어 있습니다! 그래서 jar 파일을 빌드할 뿐 아니라 바로 실행시킬 수도 있습니다.😊 강의 들으시면서 더 궁금하신 부분이 있으면 편하게 질문해주세요!
- 1
- 1
- 28
질문&답변
강의 실습 프로젝트 git clone은 못하나요?
김형준님 안녕하세요. 데브위키입니다. 혹시 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 . 강의 들으시면서 더 궁금하신 부분이 있으면 편하게 질문해주세요!
- 1
- 2
- 47
질문&답변
도커 볼륨 공유에 대해 질문있습니다.
gogoDevelop님 안녕하세요. 데브위키입니다.네, 말씀하신대로 여러 데이터베이스가 하나의 볼륨을 공유하면 무결성 문제가 발생합니다.보통은 실무에서 이 문제를 두 가지 경우로 해결하는데요. 첫 번째로 실무 파트에서 배울 예정인 Master-Slave구조를 사용하는 것입니다. 이 구조에서 실제 쓰기작업은 1대의 서버에서만 이루어지고, 나머지 서버들은 읽기 작업만 수행합니다. 두 번째로 각각의 서버가 별도의 볼륨을 사용하면서, 데이터를 동기화하는 소프트웨어(rsync, Ceph 등)를 사용하는 방법입니다. 강의 들으시면서 더 궁금하신 부분이 있으면 편하게 질문해주세요!
- 1
- 2
- 67
질문&답변
질문입니다.
doyeon kim 님 안녕하세요, 데브위키입니다.개발자를 위한 쉬운 리눅스 강의는 실제 사용하는 명령에 초점을 맞춘 강의이기 때문에, 리눅스 마스터 2급을 준비하는 데는 많은 도움이 되지 않을 수 있습니다!강의로 먼저 리눅스에 익숙해지신 후에, 리눅스 마스터2급 관련 도서를 하나 구매하셔서 학습하시는 것을 추천 드립니다.☺ 강의 들으시면서 더 궁금하신 부분이 있으면 편하게 질문해주세요!
- 1
- 2
- 59
질문&답변
[섹션9] 동적 서버 구성 시 script 실행 에러
andrew.park 님 안녕하세요.먼저 프로젝트의 nginx.conf 파일과 docker-entrypoint.sh 파일의 내용을 확인해 보아야 할 것 같습니다.cd ~/easydocker/leafy3/leafy-frontend 로 프로젝트 폴더로 이동하신 후,cat nginx.confserver { listen 80; server_name _; location / { root /usr/share/nginx/html; index index.html index.htm; } location /api/ { proxy_pass http://${BACKEND_HOST}:${BACKEND_PORT}; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } } cat docker-entrypoint.sh#!/bin/sh set -e # default.conf.template 파일에서 환경 변수를 대체하고 결과를 default.conf에 저장 envsubst '${BACKEND_HOST} ${BACKEND_PORT}' /etc/nginx/conf.d/default.conf # 다음 명령어를 실행 exec "$@"이 부분이 잘 작성되어 있는지 확인해주시겠어요?
- 0
- 2
- 61
질문&답변
docker commit error
ahha님 안녕하세요. 데브위키입니다.파워셸에서 실습하실 경우 따옴표를 처리하는 규칙이 달라서 에러가 발생할 수 있습니다. docker commit -m 'edited index.html by MS' -c "CMD [\"nginx\", \"-g\", \"daemon off;\"]" officialNginx ahha057/commitnginx이 명령어로 실행해 보시겠어요?가능하시면 깃 배시에서 실습하는것을 권장 드립니다!
- 0
- 2
- 78
질문&답변
leafy 로그인이 되지 않습니다!
jaesungyoun님 안녕하세요. 데브위키입니다.404 에러인 것으로 보아 백엔드 애플리케이션이 제대로 실행되지 않고 있을 가능성이 높습니다. docker ps -a 명령으로 실행 중인 컨테이너의 상태를 한 번 확인해 주시겠어요?
- 0
- 2
- 72
질문&답변
도커 데스크탑을 설치하고 실행시킬려니 WSL오류가 나는데 ...
data db님 안녕하세요. 데브위키입니다.파워셸을 관리자 권한으로 실행한 후에wsl --update 를 실행해 보시겠어요?
- 0
- 2
- 177
질문&답변
npm run ci 캐싱 관련 질문입니다.
Donggun Jang님 안녕하세요. 데브위키입니다.프론트엔드의 도커파일에는 아래와 같이 COPY 지시어가 있습니다.COPY package.json . COPY package-lock.json .package.json과 package-lock.json이 패키지 관련 파일이라는것은 도커가 알 수는 없지만, 각 레이어마다 파일의 내용이 포함된 해시 값을 가지고 있습니다.이전 빌드와 비교했을 때 파일이 변경되었다는 것은 알 수 있는 것이죠.그래서 이전 빌드의 파일 해시 값과 현재 빌드의 파일 해시 값을 비교해 보았을 때, 해시 값이 다르면 캐시된 레이어를 사용하지 않고 새로운 레이어를 사용하게 됩니다. 강의 들으시면서 더 궁금하신 부분이 있으면 편하게 질문해주세요!
- 1
- 2
- 58