"[보충 자료] Docker로 PostgreSQL 실행시켜보기"에 관련 내용이 있기는 한데, 제가 이걸 못 보고 /var/lib/postgresql/data라고 썼다가 제대로 작동이 안 돼서 GPT에 물어보면서 해결했습니다. /var/lib/postgresql/data를 /var/lib/postgresql 이렇게만 바꿔도 오류는 발생하지 않는 것 같습니다. 보충 자료에 나온 것처럼 /var/lib/postgresql/<버전>/docker로 쓰는 거랑 완전히 같은 게 맞는지 확신은 안 되지만 강의 따라하면서 문제는 없었습니다. docker run -d -e POSTGRES_PASSWORD=password123 -p 5432:5432 -v D:\docker-postgresql/postgresql_data:/var/lib/postgresql postgres 위 명령어를 입력하면, 데이터들이 있는 호스트 디렉터리 주소는 아래와 같은 구조가 됩니다.
newest로 정렬했을 때 가장 최신인 건 trixie-perl이니 이게 latest여야 하지 않나 생각이 되는데 왜 latest가 따로 있는 건지 궁금합니다. 용량이 다른 걸 보니 다른 이미지 같은데, 최신으로 올라온 게 latest여야 하지 않나요? 어떤 이유인지 궁금합니다.
윈도우(Windows) 환경으로 실습하시는 수강생분들 중에서 볼륨이 제대로 생성되지 않는 분들은 아래 링크의 해결책을 참고해보세요! https://inf.run/7d8pW 위 링크에 나와있는 방식대로 해결이 안 되실 경우 질문 게시판에 질문 남겨주시기 바랍니다:D 위에 방법으로 더블 쿼터로 묶어도 해당 문제가 해결되지 않습니다. 볼륨을 직접 생성해서 하는건 가능하지만, 해당방법으로도 해보고 싶은데 방법은 없는건가요?
차례대로 따라가던 중 docker build -t my-jdk17-server . 를 실행하면 ERROR: failed to build: failed to solve: openjdk:17-jdk: failed to resolve source metadata for docker.io/library/openjdk:17-jdk: docker.io/library/openjdk:17-jdk: not found 위와 같은 에러가 발생합니다. 이유를 찾아보니 Docker hub 정책변화로openjdk 이미지를 eclipse-temurin 으로 이전한 상태라고 하는데 어떻게 해야하나요?
강의에서 말씀하신 것처럼, postgres 라고만 입력하면 최신 버전의 PostgreSQL이 실행됩니다. PostgreSQL 18 버전 이상부터는 데이터 디렉터리 경로가 기존의 /var/lib/postgresql/data 에서 /var/lib/postgresql/<버전>/docker 형태로 변경되었습니다. 따라서 저는 현재 최신 버전인 PostgreSQL 18을 사용하고 있어서 /var/lib/postgresql/18/docker 경로로 지정해야 오류가 발생하지 않았습니다. 만약 PostgreSQL 17 이하 버전을 사용하신다면, 강사님께서 안내해주신 기존 경로( /var/lib/postgresql/data )를 그대로 사용하시면 됩니다. 아래 링크를 한 번 읽어보시면 도움이 될 것 같습니다. https://forums.docker.com/t/mysterious-docker-issue-with-postgres/149898/7 https://github.com/docker-library/postgres/pull/1259
안녕하세요 강사님 좋은 강의 잘 듣고 있습니다 이번 강의를 우분투 환경에서 진행해와서 도커 설치를 이미 했던 것처럼 공식 문서를 통해 다음과 같이 명령어를 작성하려고 했습니다. sudo apt-get update sudo apt-get install ca-certificates curl sudo install -m 0755 -d /etc/apt/keyrings sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc sudo chmod a+r /etc/apt/keyrings/docker.asc echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \ $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | \ sudo tee /etc/apt/sources.list.d/docker.list > /dev/null sudo apt-get update sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin 하지만 강의를 따라오다보니 강사님께서 입력하신 명령어가 많이 달라 궁금한 부분이 생겼습니다 sudo apt-get update && \ sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common && \ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - && \ sudo apt-key fingerprint 0EBFCD88 && \ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" && \ sudo apt-get update && \ sudo apt-get install -y docker-ce && \ sudo usermod -aG docker ubuntu && \ newgrp docker && \ sudo curl -L "https://github.com/docker/compose/releases/download/2.27.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose && \ sudo chmod +x /usr/local/bin/docker-compose && \ sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose 명령어를 천천히 살펴보다가 몇 가지 궁금한 게 생겨서 질문드립니다 공식 문서로 할때는 -o로 직접 저장을 했는데 강사님이 써주신 방식이 어떤 방식의 이점이 있는지, 실제로 업무에서 사용할 땐 아래 방식으로 써야하는지 궁금합니다 sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - && \ sudo apt-key fingerprint 0EBFCD88 && 공식 문서 명령어를 사용할 때에는 compose나 docker ce 등을 간단하게 한번에 설치했습니다. 강사님 명령어를 살펴보니 다른 방식으로 github에서 받아오시는것 같고 추가적인 명령어도 더 들어가는데 어떤 장점 때문에 이 방식을 쓰시는지 궁금합니다 감사합니다
안녕하세요. 좋은 강의 열심히 수강하고 있는 개발자 입니다. 강의를 수강하다 궁금한게 생겨 질문을 남기게 되었습니다. 만약, 실수로 볼륨을 삭제하게 된다면, 볼륨 파일을 다시 복구하는 방법이 있을까요?? 가령, 데이터베이스의 경우 commit 전이라면 rollback이 가능하듯 명령어 실수 혹은 휴먼 에러로 불륨을 삭제하게 되었을시에 대응 방법도 궁금합니다. 감사합니다.
Docker로 MySQL을 올리다가 컨테이너가 계속 실패했는데, 나중에 보니까 볼륨이 꼬여 있어서 삭제(docker volume prune) 후 해결됐습니다. 볼륨이 꽉 차거나 꼬였을 때 컨테이너가 왜 바로 실패하는지, 그리고 이런 문제를 실무에서는 어떻게 예방하는지 궁금합니다.
안녕하세요 강의 정말 잘 듣고 있습니다 너무 감사합니다. 맨마지막 강의때 spring boot + mysql + redis 컨테이너를 docker compose 를 통해 배포하는 과정에서 jar 파일이 mysql 과 커넥션을 맺어주기 위해서는 전에 강의에서 했던 것 처럼 mysql 컨테이너 service 명으로 url 을 application.yml 에 변경해야 되는게 아닌가요?? 그런 작업이 없었는데도 잘 동작하는게 의아합니다. 디폴트로 in memory db(H2) 가 구동이 된 걸까요?
............10%............20%.............30%............40%.............50%............60%.............70%............80%.............90%............100% Welcome to Gradle 8.4! Here are the highlights of this release: - Compiling and testing with Java 21 - Faster Java compilation on Windows - Role focused dependency configurations creation For more details see https://docs.gradle.org/8.4/release-notes.html Starting a Gradle Daemon (subsequent builds will be faster) <==========---> 78% EXECUTING [2m 6s] > :test > Executing test com...Ec2SpringBootSampleApplicationTests > :test > 0 tests completed 78%에서 더이상 올라가지 않고 멈춰있네요.. instance를 지우고 다시 해봐도 동일 합니다 ㅜㅜ 어떤 이유때문인지 감이 아예 안잡혀 문의 드립니다!