묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결비전공자도 이해할 수 있는 Docker 입문/실전
FROM openjdk:17-jdk 현재 기준 dockerhub에 없습니다
FROM openjdk:17-jdk 현재 기준 dockerhub에 없습니다아래처럼 변경하면 다운이 가능합니다. #FROM openjdk:17-jdk FROM eclipse-temurin:17-jdk
-
해결됨비전공자도 이해할 수 있는 Docker 입문/실전
Redis 볼륨 설정?
제가 Redis는 제대로 공부하질 않아서 잘 모르긴 하는데,실무에서도 compose.yml 작성할 때 MySQL은 볼륨 설정을 하고, Redis는 볼륨 설정을 안 하는 편인가요?
-
미해결비전공자도 이해할 수 있는 Docker 입문/실전
컨테이너의 IP
각 컨테이너마다 고유의 IP 주소를 가지고 있잖아요.docker run -d -p 4000:80 nginx근데 이 명령어에는 컨테이너의 IP 정보가 없는데, 어떻게 매핑이 되나요? 컨테이너가 여러 개이고, 모두 동일한 포트를 쓰면 구분이 안가잖아요.호스트 IP: localhost호스트 포트: 4000컨테이너 IP: ???컨테이너 포트: 80
-
해결됨비전공자도 이해할 수 있는 Docker 입문/실전
도커 이미지를 만들 때 application.yml
강의에선 application.yml를 포함한 상태로 이미지를 빌드하는데, 현업에서도 이런 식으로 하나요? 이미지를 통해 application.yml의 내용을 알 수 있다거나 보안상 문제가 생길 수 있는지 궁금합니다.
-
해결됨비전공자도 이해할 수 있는 Docker 입문/실전
compose.yml 관리
현업에선 compose.yml도 .env와 마찬가지로 .gitignore에 추가하나요? 이런 경우, compose.yml도 .env 때와 마찬가지로 새로 작성하나요?그리고 이 강의에선 compose.yml에 MySQL을 작성했는데, 만약 RDS를 사용한다면 MySQL에 관련된 것은 도커 컨테이너에 띄우지 않는다고 이해했는데 맞나요? 그리고 ECR 리포지토리도 삭제하지 않는다면 비용이 발생할까요?
-
해결됨비전공자도 이해할 수 있는 Docker 입문/실전
ECR 리포지토리에 이미지가 3개가 보입니다.
한 번만 push했는데 왜 이렇게 보일까요?제 컴퓨터는 윈도우인데, Q&A에서 맥 명령어를 입력해도 된다는 답변을 보고 일부러 맥 명령어를 해 봤습니다. 혹시 그것 때문일까요?push는 됐는데 이미지가 3개면 잘못된 건가요?
-
해결됨비전공자도 이해할 수 있는 Docker 입문/실전
액세스 키 등록하는 시점 관련 질문이 있습니다.
강의를 듣기 전에 학습 자료를 먼저 읽어 봤습니다. 그런데 AWS CLI 설치 및 액세스 키 등록 관련 궁금한 점이 있습니다. https://jscode.notion.site/AWS-EC2-Spring-Boot-91cb5f42afa04e39b6c80a462187d75b여기선 액세스 키를 등록하기 전에 docker push를 하는데, 액세스 키 등록 전에 aws ecr get-login-password ... 및 AWS ECR에 docker push가 가능한 건가요? 액세스 키는 docker pull이랑만 관련이 있는 건가요? 액세스 키는 무엇을 위해 등록하는지 궁금합니다.
-
해결됨비전공자도 이해할 수 있는 Docker 입문/실전
depends_on에 따른 컨테이너 실행 순서
services: my-server: build: . ports: - 8080:8080 depends_on: my-db: condition: service_healthy my-db: image: mysql environment: MYSQL_ROOT_PASSWORD: pwd1234 MYSQL_DATABASE: mydb volumes: - ./mysql_data:/var/lib/mysql ports: - 3306:3306 healthcheck: test: ["CMD", "mysqladmin", "ping"] interval: 5s retries: 10강의 자료대로 이렇게 작성했는데이렇게 설정하면 my-db가 healthy할 때 my-server 컨테이너를 실행한다고 이해했습니다.그런데 docker compsoe logs로 확인해 보면 my-server가 먼저 실행되고, 중간에 대기하는 거 같은데, 저는 애초에 my-server 컨테이너 실행이 늦춰지는 거라 생각했었거든요.healthcheck와 depends_on이 정확히 어떻게 동작하는 건가요?
-
미해결비전공자도 이해할 수 있는 Docker 입문/실전
실제 웹 서비스 배포 시 질문
안녕하세요 강사님! 저는 프론트엔드 개발자이고 현재 진행중인 사이드 프로젝트에서 Docker, AWS를 사용해서 Next.js 프로젝트를 배포하려고 합니다.머릿속으로 큰 그림을 그려봤을때, 강의에서 나오는 컨테이너 역할을 해주는 게 AWS EC2이고 https의 기본 포트는 443번이니까 실제 배포할때는 docker run -d -p 443:3000 my-web-server 이런식으로 포트가 맵핑돼야한다고 이해하고 있는데 제가 올바르게 이해하고 있는 게 맞을까요? 추가로 현재는 로컬에서 직접 docker run -d -p 80:3000 my-web-server를 실행하는데, 배포하게 된다면 이 명령어를 누가 실행시켜주는지도 궁금합니다..!
-
미해결비전공자도 이해할 수 있는 Docker 입문/실전
도커 volume 질문
안녕하세요,1.도커 이미지를 이서버 , 저서버 왔다가 하는 경우면도커 컨테이너?이미지? 안에 있는 volume에 db를 저장해놓는게 좋죠??(호스트 storage를 이용해 db를 저장할 수도 있다고 하셔서 질문 드립니다) 도커 컨테이너 volume 저장 공간은 원하는 만큼 조정 할 수 있나요 (최대 호스트 디스크 저장공간)?도커 사용이 처음이라 질문이 모호한점 양해 부탁드립니다..
-
해결됨비전공자도 이해할 수 있는 Docker 입문/실전
HTTPS로도 받고 싶으면 docker compose에 443도 쓰면 될까요?
services: my-web-server: build: . ports: - 80:3000이게 자료 예시인데 HTTPS도 받으려면 ports 부분에 - 443:3000도 써 주면 되는 건가요?현업에선 어떤 식으로 하나요?
-
미해결비전공자도 이해할 수 있는 Docker 입문/실전
sql 볼륨 폴더 지우면 데이터베이스 데이터 날라가는거 아닌가요?
mysql_data 폴더 지우고 다시 폴더 만들면 데이터베이스 안에 있는 데이터가 다 날라가는거 아닌가요? 그럼 볼륨을 사용하는 이유가 없을거 같아서요
-
해결됨비전공자도 이해할 수 있는 Docker 입문/실전
39강 도커파일 빌드 경로 질문이 있습니다.
[01:57] 에 상대경로로 .을 찍으라고 돼있는데요.그냥 절대경로 쓰는게 더 낫지 않나요?절대경로로도 동작하는데, 귀찮게 디렉토리 이동해야 하는 상대경로를 쓰는 이유가 궁금합니다.혹시 나중에 자동화할때 상대경로를 써야한다든지 등의 실무적인 이유가 있을까요?제가 모르는 큰 그림이 있는지 궁금합니다.
-
미해결비전공자도 이해할 수 있는 Docker 입문/실전
도커파일 copy
폴더 복사가 안되서요. 여러번 해봤는데 이미지 새로 생성 안하면 변경이 안되나봐요. 새로 생성한 이미지로 해보면 my-app 이 생성됩니다.
-
해결됨비전공자도 이해할 수 있는 Docker 입문/실전
실무에서 docker compose up --build를 할 때
docker compose up --build 같은 명령어는 실무에서 보통기존 컨테이너를 중지한 다음에 하는 건가요? 아니면 실행 중인 상태에서 바로 저 명령어를 쓰는 편인가요?상관없나요?
-
해결됨비전공자도 이해할 수 있는 Docker 입문/실전
mysql_data 폴더 내부에 다른 파일이 있는데도 잘 되는 경우
docker run -e MYSQL_ROOT_PASSWORD=password123 -p 3306:3306 -v /Users/jaeseong/Documents/Develop/docker-mysql/mysql_data:/var/lib/mysql -d mysql 이 명령을 하기 전에 mysql_data 폴더는 만들어 놔도 되지만, 폴더 내부에 다른 파일이 있으면 안 된다고 이해했습니다. 그런데 바로 이전 '[실습] Docker로 MySQL 실행시켜보기 - 3 강의' https://jscode.notion.site/Docker-MySQL-3-f07a2d5a24d24bf184e78622e55a6d8c에서 비밀번호 바꿔 보는 테스트를 할 때, password123으로 컨테이너를 실행한 뒤, 컨테이너를 삭제한 후 mysql_data 폴더는 따로 삭제하지 않아서 mysql_data 내부엔 파일들이 있었을 텐데, 그 이후에 pwd1234로 바꿔서 컨테이너를 다시 생성할 때 오류가 안 났던 이유는 뭔가요?
-
해결됨비전공자도 이해할 수 있는 Docker 입문/실전
도커 허브에서 postgres 버전 확인하는 법
도커 허브에 있는 postgres:latest인데https://hub.docker.com/layers/library/postgres/latest/images/sha256-c84595a367a3fe5a4d9dce011490da38c462190e6ac7afb7d2a4c49436c80656 이건 postgres 몇 버전인가요? 다른 Q&A 보니 postgres 버전 관련 얘기가 있어서 최신 postgres가 18버전인지, 그 이상이 나왔는지 보고 싶었는데 저 링크를 들어가도 어디서 확인해야 하는지 모르겠습니다. 그리고 newest는https://hub.docker.com/layers/library/postgres/14.20-alpine3.23/images/sha256-df852d122662b3a4ef0662daf3572ec3f6251924fbd2e44bc5d9d8ed252ae767 postgres:14.20-alpine3.23인데, 이건 14 버전인가요? postgres 18버전도 나온 거로 알아서 14라는 게 버전은 아닌 거 같은데, 어디서 버전을 확인할 수 있는지 궁금합니다.
-
해결됨비전공자도 이해할 수 있는 Docker 입문/실전
보충 자료와도 관련된 추가 내용
"[보충 자료] 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 위 명령어를 입력하면, 데이터들이 있는 호스트 디렉터리 주소는 아래와 같은 구조가 됩니다.
-
해결됨비전공자도 이해할 수 있는 Docker 입문/실전
현업에서 MySQL은 RDS와 도커 볼륨 중 어떤 걸 사용하나요?
아니면 MySQL을 사용할 때 도커와 RDS를 조합해서 사용할 수도 있나요? 현업에서 어떤 식으로 사용하는지 궁금합니다.
-
해결됨비전공자도 이해할 수 있는 Docker 입문/실전
노션 자료에 안 보이는 이미지가 있습니다
'[보충 자료] Windows에서 lsof, kill, sudo 명령어가 작동하지 않을 때 대처 방법'여기서 관리자 권한으로 실행 부분 이미지가 저렇게 보입니다.