안녕하세요 선생님 윈도우 11 사용중인 학생인데 sudo lsof -i:3306을 입력했더니 처음에는 Sudo가 이 컴퓨터에서 사용하지 않도록 설정되어 있습니다. 사용하도록 설정하려면 으로 이동하세요. Developer Settings page 설정 앱의 이런식으로 나와서 검색해보니 sudo를 활성화 시켜야한다고해서 sudo를 활성화 시킨뒤 인라인모드로 설정을 했습니다. 이 후에 실행하니 명령을 찾을 수 없음 이라고 나오고 sudo config --enable normal을 쳐보라해서 쳐보니 Sudo는 현재 이 컴퓨터에서 인라인 모드입니다. 이렇게만 나오는데 이건 어떻게 해결해야할까요??
첫번쨰 질문:섹션9에서 하는게 지금 내가 만든 프로젝트를 aws ECR에 이미지로 올리고 그 이미지로 만든 프로젝트를 aws에 배포를해서 사용자들이 사용하게 한다 결국 이거맞나요? 두번쨰 질문 섹션9에서 ec2에서 compose.yml을 적어서 컨테이너를 추가하는데 이렇게말고 스프링부트 프로젝트에서 compose.yml 파일 추가해서 이미지로 한번에 만들고 배포해도 똑같은건가요? 여기가 이해가안됩니다. 그전에는 스프링부트에서 compose.yml을 추가하고 컨테이너를 여러개 띄웠는데 지금은 aws에서 직접 compose.yml을 만드는게.. 세번쨰 질문 그전에 했던 실습에는 스프링부트안에 application.yml 에 이렇게적었는데 spring: datasource: url: jdbc:mysql://my-db:3306/mydb username: root password: pwd1234 driver-class-name: com.mysql.cj.jdbc.Driver data: redis: host: my-cache-server port: 6379 섹션 9처럼 aws ec2에 직접 compose.yml을 적으면 저렇게 appclication.yml은 없는데 상관없이 mysql 워크벤치같은곳에서 사용이가능한가요?
안녕하세요 비전공자로 AI 관련 공부를 하면서 기본적인 도커 지식의 필요성을 느껴서 공부하고 있습니다. 실습하면서 궁금한 점이 생겼는대 docker run nginx 해서 container 를 생성해서 image 가 띄워진 것을 확인하고 docker stop 하고 docker rm 해서 해당 container 를 삭제하고 나서 docker image ls 확인해보니까 image 는 남아있습니다. container 삭제와 그 container 에 띄워져 있던 image 가 같이 삭제되지 않는것 처럼 보이는데 이걸 어떻게 이해하는게 좋을까요 너무 쓸데 없을 수 있는 질문 같아 죄송합니다.
안녕하세요 강사님 제가 강사님 강의를 즐겨듣는 수강생입니다. 질문1)제가 채팅과 로그인 에 관해서 서버 배포를 하고 싶은데 채팅내용이나 이런거는 Redis를 이용해 배포하고 로그인 회원가입등은 Mysql 을 이용한다고 가정했을 때 Redis는 RDS를 이용하는 게 나을까요? -- 이 부분이 아예 감이 안 잡혀서 구조 한번만 설명좀 해 주시면 감사하겠습니다. 질문2) 만약 협업 프로젝트를 한다고 가정하면 EC2에 직접 들어가서 compose.yml을 작성하는 거 외에는 답이 없을까요? (제가 만약 채팅을 담당한다고 가정했을때 질문1)과 연관지어서 설명좀 해 주시면 감사하겠습니다. 현업에서는 어떻게 하는 건가요? 일단 CI/CD를 들어볼 예정입니다.)
안녕하세요 강사님 그 html css 를 로컬에서 돌리는데 자꾸 nginx 이 화면만 나와가지고 문제가 발생합니다.(시크릿 창 새로고침 해봤습니다.) 코드는 FROM nginx COPY ./ /usr/share/nginx/html <!DOCTYPE html> <head> <meta charset="UTF-8"> <link rel="stylesheet" href="style.css"> </head> <body> <h1>My Web Page</h1> </body> </html> index.html *{ color:blue; } style.css pdf 에 있는 대로 해도 오류가 그대로 뜹니다... ㅠㅠ 도와주세요
EC2로 여러 개의 container를 docker compose up으로 배포를 하는 것은, EC2라는 가상의 컴퓨터에서 springboot, mysql, redis container를 실행시키는 것이잖아요. 이전 다른 실습에서는 springboot에서 localhost는 자기 자신의 포트를 가리키기 때문에 docker에서 container의 이름인 my-db와 my-redis-server로 바꿔주어야 한다고 하셨는데, 현재 인텔리제이에서 docker로 빌드한 이미지에는 .properties 파일과 gradle 파일을 맞춰서 작성하지 않았는데, db나 redis를 못찾는다는 에러 없이 왜 잘 돌아가는지 궁금합니다.
안녕하세요! [실습] AWS EC2에 Spring Boot 배포하기 수업을 듣다가 궁금한 점이 생겨서 질문드립니다. 이전의 강의에서 docker compose -d --build 여기서 --build 옵션은 코드가 수정된 것을 실시간으로 반영하기 위해서 컨테이너를 띄울 때 마다 이미지를 매번 새롭게 빌드한다는 뜻이라고 하셨는데요 EC2에 스프링 부트를 배포할 때는 로컬에서 이미 빌드된 이미지를 ECR 에 push 하고, EC2에서는 그 이미지를 pull 땡겨서 사용하는데 컨테이너를 띄울 때 꼭 --build 옵션을 적어줘야 하는건가요? 수업하시면서 --build 옵션을 강조하셔서 그 부분이 헷갈려서 여쭤봅니당 또 비슷하게 한가지 궁금한건 compose.yml 파일에 build: . 이 아닌 image: <이미지명> 이 있을 땐 --build 옵션을 쓰지 않아도 되는걸까요?
안녕하세요. docker 공부를 하고있는데 redis를 강사님과 똑같이 docker run -d -p 6379:6379 redis 라고 생성했더니 생성은 되나 자동으로 꺼지네요. CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES be795dd1b69f redis "docker-entrypoint.s…" 4 seconds ago Exited (1) 4 seconds ago my-redis ce1e514748c0 redis "docker-entrypoint.s…" 3 minutes ago Exited (1) 3 minutes ago gallant_davinci M1칩 맥북을 사용하고있는데 아키텍처 불일치 문제일 수도 있다고 하여 구글링해서 아래와 같이 입력도 해보았으나 계속 자동으로 꺼집니다..ㅠㅠ docker run --platform linux/arm64 --name test-redis -d -p 6379:6379 redis 전에 Docker Desktop을 깔아두어서 사용중인데 이것때문에 문제가 발생할수도있나요? nginx 이미지를 통해 컨테이너를 생성하면 안꺼지는데 redis, mysql, mariadb같은 데이터베이스 이미지만 사용하면 꺼지네요.
이번 강의에서 NestJS는 컨테이너를 생성하면서 npm install + npm run build 로 컨테이너 내에서 애플리케이션을 빌드하는 것을 배웠습니다. 하지만 왜 Spring Boot는 컨테이너를 생성하기 전에 먼저 빌드를 하고 이 jar 파일을 컨테이너로 복사하는 것인가요? Spring Boot도 NestJS처럼 컨테이너 내에서 빌드하면 docker compose up -d --build 전에 ./gradlew clean build 도 생략할 수 있으니 더 편리하지 않을까 싶어 혹시 이유가 있는지 질문 드립니다. 감사합니다.
안녕하세요. EC2 강의를 듣던 중, 프론트엔드 애플리케이션은 주로 CDN을 통해 배포하고, 백엔드 API 서버는 EC2에 배포한다고 설명해주셨는데 이와 관련해 궁금한 점이 있습니다. 만약 CSR 기반의 프론트엔드 프로젝트라면, 빌드 후 생성된 정적 파일을 S3에 업로드하고 CloudFront 같은 CDN을 통해 배포하는 방식이 충분하다고 생각합니다. 하지만 최근에는 React에서 Server Actions 같은 서버 기능이 도입되고, Next.js 역시 SSR, API Routes 등을 포함하면서 정적 파일만으로 구성되지 않는 경우가 많아지고 있습니다. 이런 경우, 프론트엔드 애플리케이션은 어떤 방식으로 어디에 배포하는 것이 적절할까요? CDN만으로는 어려워 보이는데, EC2나 다른 대안이 있는지도 궁금합니다. 감사합니다.
compose up -d --build 를 통해 최종적으로 다합해서 시작을했는데 에러가 뜨는게아니라 계속 과부하 걸리는지 EC2가 먹통이되더라고요 로컬로해도 계속 메모리부족같은게 뜨면서 프로그램 실행중인거 끄라고 그러는데 뭔가 메모리를 어디서 엄청 잡아먹는거같은데 다른건 다괜찮은데 compose로 mysql이랑 springboot연결하면 그런거같네요
docker 실습을 위해서 Windows 환경에 WSL v2 버전 설치 후 docker를 올렸습니다. docker search 시에는 검색이 되는데 docker pull 을 하면 아래의 에러가 발생됩니다. "Error response from daemon: Get " https://registry-1.docker.io/v2/ ": net/http: TLS handshake timeout" 😢 인터넷에 찾아보니 인터넷 속도가 느려서라는데 인터넷 속도는 100Mbps로 늦을 이유가 없습니다. 혹시 다른 해결책이 있을까요? 실습이 불가능하여 이론 공부만 계속 하고 있어요 ㅠㅠ
강사님 강의 잘 듣고 있습니다. 다름이 아닌 저는 Windows 11 환경에서 docker-desktop을 설치하여 강의 및 실습을 진행중에 있는데, 호스트(윈도우)의 C:\docker\docker-practice 경로에 dockerfile(강사님 설정과 동일하여 정상 build도 가능)을 생성, 이외 영상처럼 app.txt 및 my-app이라는 폴더를 생성하여 강사님과 동일한 dockerfile 내용으로 copy 결과를 보려했습니다. 하지만 아무것도 copy되지 않음을 확인하였으며 해당 결과를 gpt에 확인 시, docker desktop에서 c드라이브 공유 설정을 확인하라는 답변이 돌아왔습니다 (settings의 resource -> file sharing 또는 resources의 Drives 탭). 하지만 gpt가 제시한 부분은 없는것인지, 제가 찾지 못하는 것인지는 불명확하나 해당 해결법은 docker-desktop에 없는 기능같아 보입니다. 혹시 관련 문제에 대한 답변 가능하실까요?