프로젝트 구성 Dockerfile FROM node:14 RUN apt-get update && apt-get install -y bash COPY ./package.json /myfolder/ COPY ./yarn.lock /myfolder/ WORKDIR /myfolder/ RUN yarn install COPY . /myfolder/ CMD ["yarn", "start:dev"] docker-compose.yaml version: "3.7" services: node-server: build: context: . dockerfile: Dockerfile volumes: - ./index.js:/myfolder/index.js - ./email.js:/myfolder/email.js ports: - 3000:3000 database-server: image: mongo:5 ports: - 27017:27017 Window 환경입니다. 위와 같을 때 index.js 파일을 수정하여도 docker로 연동된 nodemon 재 실행이 안됩니다. docker-desktop 에서 container 에서보면 mount 라고 표기되어있고 위의 새로고침 버튼을 누르면 제대로 적용 됩니다. 원인이 뭘까요?
4분쯤에 "볼륨을 제대로 잘 쓰려면 호스트의 디렉토리 경로를 빈 디렉토리로 만들던, 아니면 존재하지 않는 디렉토리로 만들어 놔야 이 컨테이너에 저장돼 있던 파일들을 이리로 붙여넣기를 해버립니다. 이렇게. 호스트에 파일이 이미 있으면 이렇게 컨테이너 기존에 있던 폴더 다 지워버리고 복사가 됩니다." 라고 하셨습니다. 근데 볼륨을 쓰는 이유가 호스트에 파일을 저장하여 mysql 컨테이너를 변경해도 저장된 값을 쓰게 하려는 것인데 호스트에 있는 파일을 매번 지워야한다면 볼륨을 쓰는 이유가 없는 거 아닌가요?
입문자를 위한 Spring Boot with Kotlin - 나만의 포트폴리오 사이트 만들기
안녕하세요. 항상 좋은 강의 제공해 주셔서 감사합니다. 현재 Admin 뷰 템플릿을 적용하는 강의를 듣고 있습니다. 강의에서 안내해 주신 방법대로 뷰 템플릿을 다운로드받기 위해 해당 페이지에 접속했는데, 아래 이미지와 같이 표시되어 있어 질문드립니다. 혹시 최근 업데이트로 인해 Admin 뷰 템플릿이 유료화된 것인지, 또는 다른 변경 사항이 있는지 확인해 주실 수 있을까요? 개인적으로는 2025년 3월 11일 업데이트 이후 유료화된 것으로 보이는데, 정확한 내용이 궁금합니다. 답변 부탁드립니다. 감사합니다. [URL]: https://bootstrapmade.com/nice-admin-bootstrap-admin-html-template
docker-compose up -d 할때 leafy_leafy-front_1가 자꾸 꺼지고 restart 되는게 반복되는데 docker logs leafy_leafy-front_1 를로 확인해본결과 exec /usr/local/bin/ docker-entrypoint.sh : no such file or directory 라는 오류가 있네요 윈도우로 수업 들을때는 문제없었는데 aws ec2 아마존 리눅스 에서 돌려보니 해당 오류가 계속 생겨서 질문드립니다 검색 및 예전 답변을 참고해서 crlf 를 lf 로 바꿔도보고 새로 clone 해보고 했는데 여전히 오류 입니다. 윈도우에서는 되다가 오히려 리눅스 환경에서 안되는게 이유를 모르겠습니다 ㅠㅠ 답변 부탁합니다
안녕하세요. 강사님. 설치 중 오류가 있어 문의드립니다. vagrant up 명령 실행 시 중간에 나던 오류는 yum -> dnf 로 변경하여 오류 없이 [7] 까지는 통과했는데요. 아래 [8] 번 부터 오류가 발생합니다. 확인 가능하시면 확인을 좀 부탁 드립니다. k8s-master: ======== [8] kubeadm으로 클러스터 생성 ======== k8s-master: ======== [8-1] 클러스터 초기화 (Pod Network 세팅) ======== k8s-master: W0313 17:20:12.760941 26182 version.go:104] could not fetch a Kubernetes version from the internet: unable to get URL " https://dl.k8s.io/release/stable-1.txt ": Get " https://dl.k8s.io/release/stable-1.txt ": tls: failed to verify certificate: x509: certificate signed by unknown authority k8s-master: W0313 17:20:12.760978 26182 version.go:105] falling back to the local client version: v1.27.2 k8s-master: [init] Using Kubernetes version: v1.27.2 k8s-master: [preflight] Running pre-flight checks k8s-master: [preflight] Pulling images required for setting up a Kubernetes cluster k8s-master: [preflight] This might take a minute or two, depending on the speed of your internet connection k8s-master: [preflight] You can also perform this action in beforehand using 'kubeadm config images pull' k8s-master: W0313 17:20:12.881425 26182 images.go:80] could not find officially supported version of etcd for Kubernetes v1.27.2, falling back to the nearest etcd version (3.5.7-0) k8s-master: W0313 17:20:13.861338 26182 checks.go:835] detected that the sandbox image "registry.k8s.io/pause:3.6" of the container runtime is inconsistent with that used by kubeadm. It is recommended that using "registry.k8s.io/pause:3.9" as the CRI sandbox image. k8s-master: error execution phase preflight: [preflight] Some fatal errors occurred: k8s-master: [ERROR ImagePull]: failed to pull image registry.k8s.io/kube-apiserver:v1.27.2: output: E0313 17:20:13.105343 26238 remote_image.go:167] "PullImage from image service failed" err="rpc error: code = Unknown desc = failed to pull and unpack image \"registry.k8s.io/kube-apiserver:v1.27.2\": failed to resolve reference \"registry.k8s.io/kube-apiserver:v1.27.2\": failed to do request: Head \" https://registry.k8s.io/v2/kube-apiserver/manifests/v1.27.2\ ": x509: certificate signed by unknown authority" image="registry.k8s.io/kube-apiserver:v1.27.2" k8s-master: time="2025-03-13T17:20:13+09:00" level=fatal msg="pulling image: rpc error: code = Unknown desc = failed to pull and unpack image \"registry.k8s.io/kube-apiserver:v1.27.2\": failed to resolve reference \"registry.k8s.io/kube-apiserver:v1.27.2\": failed to do request: Head \" https://registry.k8s.io/v2/kube-apiserver/manifests/v1.27.2\ ": x509: certificate signed by unknown authority" k8s-master: , error: exit status 1 k8s-master: [ERROR ImagePull]: failed to pull image registry.k8s.io/kube-controller-manager:v1.27.2: output: E0313 17:20:13.323731 26275 remote_image.go:167] "PullImage from image service failed" err="rpc error: code = Unknown desc = failed to pull and unpack image \"registry.k8s.io/kube-controller-manager:v1.27.2\": failed to resolve reference \"registry.k8s.io/kube-controller-manager:v1.27.2\": failed to do request: Head \" https://registry.k8s.io/v2/kube-controller-manager/manifests/v1.27.2\ ": x509: certificate signed by unknown authority" image="registry.k8s.io/kube-controller-manager:v1.27.2"
안녕하세요. 강사님.. 수고가 많으십니다. k8s v1.27 설치 가이드에 따라 설치를 진행하고 있는데요. vagrant up 명령 실행 시 아래와 같은 오류가 발생합니다. (보안 문제인가 싶어, box remove 후 vagrant box add --insecure rockylinux-repo.json 로 다시 add 한 상태입니다.) 원인 및 조치 방법을 알 수 있을까요? k8s-node1: ======== [6-2-1-1] containerd 설치 ======== k8s-node1: Rocky Linux 8 - AppStream 0.0 B/s | 0 B 00:00 k8s-node1: Errors during downloading metadata for repository 'appstream': k8s-node1: - Curl error (60): Peer certificate cannot be authenticated with given CA certificates for https://mirrors.rockylinux.org/mirrorlist?arch=x86_64&repo=AppStream-8 [SSL certificate problem: self signed certificate in certificate chain] k8s-node1: Error: Failed to download metadata for repo 'appstream': Cannot prepare internal mirrorlist: Curl error (60): Peer certificate cannot be authenticated with given CA certificates for https://mirrors.rockylinux.org/mirrorlist?arch=x86_64&repo=AppStream-8 [SSL certificate problem: self signed certificate in certificate chain] k8s-node1: Failed to enable unit: Unit file containerd.service does not exist. k8s-node1: ======== [6-3] 컨테이너 런타임 : cri 활성화 ======== k8s-node1: /tmp/vagrant-shell: line 68: /etc/containerd/config.toml: No such file or directory k8s-node1: sed: can't read /etc/containerd/config.toml: No such file or directory k8s-node1: Failed to restart containerd.service: Unit containerd.service not found. k8s-node1: ======== [7] kubeadm 설치 ======== k8s-node1: ======== [7] repo 설정 ======== k8s-node1: [kubernetes] k8s-node1: name=Kubernetes k8s-node1: baseurl= https://pkgs.k8s.io/core:/stable:/v1.27/rpm/ k8s-node1: enabled=1 k8s-node1: gpgcheck=1 k8s-node1: gpgkey= https://pkgs.k8s.io/core:/stable:/v1.27/rpm/repodata/repomd.xml.key k8s-node1: exclude=kubelet kubeadm kubectl cri-tools kubernetes-cni k8s-node1: ======== [7] SELinux 설정 ======== k8s-node1: ======== [7] kubelet, kubeadm, kubectl 패키지 설치 ======== k8s-node1: Rocky Linux 8 - AppStream 0.0 B/s | 0 B 00:00 k8s-node1: Errors during downloading metadata for repository 'appstream': k8s-node1: - Curl error (60): Peer certificate cannot be authenticated with given CA certificates for https://mirrors.rockylinux.org/mirrorlist?arch=x86_64&repo=AppStream-8 [SSL certificate problem: self signed certificate in certificate chain] k8s-node1: Error: Failed to download metadata for repo 'appstream': Cannot prepare internal mirrorlist: Curl error (60): Peer certificate cannot be authenticated with given CA certificates for https://mirrors.rockylinux.org/mirrorlist?arch=x86_64&repo=AppStream-8 [SSL certificate problem: self signed certificate in certificate chain] k8s-node1: Failed to enable unit: Unit file kubelet.service does not exist. The SSH command responded with a non-zero exit status. Vagrant
.gitignore에 추가된 application.yml을 CI/CD로 관리하기 강의에서 1:40초 부분에서 git add . / git status한 다음에 application.yml이 수정이 되고 있다. 캐싱떄문이라고 하셨는데 . application.properties를 yml로 바꾸고 aws: access-key: ABCDEFG secret-key : HOIJOIASDJO 이 값들을 입력했는데 git status에 어느부분이 문제인건가요? yml파일도 modified?라는 상태가 안떠서 문제인건지 정확히 이해를 못해서 질문 남깁니다. 혹시 .gitignore에 넣었으니깐 새로운 파일을 추가하던 수정을 하던 git status에 안떠야 정상인건가요?
- name: application.yml 만들기 run: echo "${{ secrets.APPLICATION_PROPERTIES }}" > ./src/main/resources/application.yml 강의에서 이런식으로 시크릿 변수에 yml을 미리 넣었는데 만약에 yml안에서도 시크릿 변수를 사용하면 제대로 동작을 하나요?? ex)kakaopay: secretKey: ${KAKAOPAY_KEY} 이런식으로 yml에 있다고 할 때
안녕하세요. redis를 공부하던 중 궁금한 점이 생겨서 질문드립니다. 개발상황 window10 springboot 3.4.3 티스토리 를 참고해서 redis 설치 window for docker 설치 문제상황 docker의 compose.yml을 생성해서 docker 이미지(springboot와 redis)를 생성해서 동작을 시켰습니다. 이때 window에서 동작 중인 redis를 중지시키지 않았지만 docker의 redis는 포트 충돌 없이 정상적으로 동작합니다. window와 docker에서 redis가 여전히 동작 중인 것은 확인했습니다. Dockerfile FROM openjdk:17-jdk COPY build/libs/*SNAPSHOT.jar app.jar ENTRYPOINT ["java", "-jar", "/app.jar"] compose.yml services: api-server: build: . ports: - 8080:8080 depends_on: cache-server: condition: service_healthy cache-server: image: redis ports: - 6379:6379 healthcheck: test: [ "CMD", "redis-cli", "ping" ] interval: 5s retries: 10 docker와 window에서 redis 서버를 동작시키는 상황에서 Windows 명령 프롬프트에서 netstat 명령어를 통해서 포트번호와 IP를 확인했습니다. C:\Users>netstat -ano | findstr :6379 TCP 0.0.0.0:6379 0.0.0.0:0 LISTENING 15492 TCP 0.0.0.0:6379 0.0.0.0:0 LISTENING 19004 TCP [::]:6379 [::]:0 LISTENING 15492 TCP [::1]:6379 [::]:0 LISTENING 3800 아래는 docker redis만 동작시켰을 때 상황입니다. C:\Users>netstat -ano | findstr :6379 TCP 0.0.0.0:6379 0.0.0.0:0 LISTENING 15492 TCP [::]:6379 [::]:0 LISTENING 15492 TCP [::1]:6379 [::]:0 LISTENING 3800 아래는 window redis만 동작시켰을 때 상황입니다. C:\Users>netstat -ano | findstr :6379 TCP 0.0.0.0:6379 0.0.0.0:0 LISTENING 19004 질문 redis는 docker와 window가 다른 네트워크 인터페이스를 가지고 있어서 포트 번호가 같아도 충돌이 나지않는걸까요? 그렇다면 왜 springboot 어플리케이션은 같은 포트로 동작시켰을 때 포트 충돌이 발생하지 않아야하는거 아닐까요? springboot 어플리케이션은 포트 충돌로 인해 docker 또는 window 둘 중 하나에서만 실행시킬 수 있습니다. docker, redis에 깊은 이해를 하고 있지 않아서 많이 어려운 것 같습니다. 문제 접근 방식이 잘못된건지 저에게는 어렵네요