Docker를 사용하면서 불필요한 컨테이너와 이미지가 쌓이면 용량 부족 문제가 발생할 수 있습니다. 이 글에서는 Docker의 컨테이너와 이미지를 안전하게 삭제 및 정리하는 방법을 정리했습니다. 1. 컨테이너 삭제하기 ▼ 1. 특정 컨테이너 삭제 컨테이너 이름이나 ID를 사용하여 특정 컨테이너를 중지하고 삭제합니다. ▼ 2. 다음은 예시입니다. ▼ 3. 종료된 컨테이너 조회하기 종료된 상태의 컨테이너만 조회할 수 있습니다. ▼ 4. 종료된 컨테이너 일괄 삭제 (안전) 종료된 컨테이너를 안전하게 한 번에 삭제할 수 있습니다. ▼ 5. 확인 없이 즉시 삭제하려면 다음과 같은 명령을 사용합니다. ▼ 6. prune을 사용하지 않고 동일한 작업을 수행하는 명령어는 다음과 같습니다. ..
Docker를 활용하여 MongoDB, 백엔드, 프론트엔드 환경을 구성하는 방법을 정리했습니다. MongoDB 설정 ▼ 1. MongoDB는 별도로 포트를 열어줄 필요 없이 --network 설정만으로 컨테이너를 실행할 수 있습니다. MONGO_INITDB_ROOT_USERNAME: MongoDB의 루트 사용자 이름MONGO_INITDB_ROOT_PASSWORD: MongoDB의 루트 사용자 비밀번호-v data:/data/db: 데이터 저장을 위한 볼륨 설정 백엔드 설정 ▼ 2. MongoDB에 보안 연결을 설정할 때는 다음과 같은 연결 문자열을 사용합니다. ▼ 3. 만약 문제가 발생한다면 MongoDB의 볼륨 연결을 확인하고, 기존 볼륨을 제거한 후 다시 실행합니다. ▼ 4. 백엔드 컨테이..
도커 설치기존에 쓰던 애플실리콘에서는 문제없이 잘되던 도커 설치가 인텔 맥에서는 정상동작하지 않아 다른 방법을 찾던 중 brew 로 설치하는 방법이 있어서 소개합니다. --cask 옵션은 Homebrew Cask를 사용하여 GUI 애플리케이션 및 바이너리 소프트웨어를 설치할 때 사용하는 옵션입니다. brew install : 터미널에서 실행되는 도구 (git, node, python...)brew install --cask : GUI 앱이나 바이너리 패키지 (docer, google-chrome, slack...) ▼ 1. brew 명령어로 도커를 설치합니다. 도커 버전 확인 ▼ 1. 도커 버전을 확인합니다. ▼ 1.도커 컴포즈 버전도 확인합니다. 테스트 이미지 실행 ▼ 1.테스트를 위..
도커로 이미지를 푸시하려면 hub.docker.com 에서 할 수 있습니다. Private 레포지토리는 1개로 제한되어 있고 Public 레포지토리는 개수의 제한은 없지만 빌드 자동화가 불가능하며 Pull 에 대한 제한이 있을 수 있습니다.https://hub.docker.com/ Docker Hub Container Image Library | App ContainerizationIncrease your reach and adoption on Docker Hub With a Docker Verified Publisher subscription, you'll increase trust, boost discoverability, get exclusive data insights, and much more...
도커 설치WS에서 제공하는 기본 Amazon Linux AMI(Amazon Linux 2, Amazon Linux 2023)는 CentOS/RHEL 기반이며 Amazon Linux AMI에는 Docker가 기본 설치되어 있지 않아서 yum 을 이용해 설치하고 service 를 이용해 실행해야 합니다. ▼ 1. yum 을 이용해 업데이트를 합니다. ▼ 2. yum 을 이용해 docker 를 설치합니다. ▼ 3. docker 버전을 확인합니다. ▼ 4. Docker 서비스를 실행합니다. SUDU 그룹 추가 및 테스트 ▼ 1. EC2 인스턴스에서 Docker를 실행하려면 ec2-user가 docker 그룹에 속해야 합니다. 변경 사항을 적용하려면 로그아웃 후 다시 로그인해야 합니다. ▼ 2..
systemctl 우분투를 Docker 컨테이너로 만들어서 사용하면 몇가지 문제점이 있습니다. 그중에서도 불편한 것은 systemctl 명령이 동작하지 않는 점인데요. 매번 설치해주는 것 보다 Dockerfile을 만들고 이미지를 만들어 놓고 사용하는것이 편리합니다. ▼ Docker 파일 생성 ▼ Docker 빌드 ▼ 컨테이너를 생성하고 접속합니다.
MySQL 설치 도커에서 컨테이너를 만들기 위해서는 기본적으로 MYSQL_ROOT_PASSWORD 라는 비밀번호 옵션을 주어야 합니다. 뿐만아니라 도커에서 특정 컨테이너를 만들었다가 삭제하면 데이터를 유지할 수 없게되는데 그럼 데이터베이스 역할을 하기 힘들게됩니다. 때문에 사용자 운영체제에 마운트 하거나 볼륨을 고정적으로 만들고 관리해줘야 합니다. ▼ 도커 pull 명령어로 새로운 MySQL 이미지를 받아옵니다. ▼ 도커 run 명령어로 새로운 컨테이너를 만듭니다. --name 옵션으로 이름을 지정하고 -e 옵션을 주어서 비밀번호를 설정합니다. ▼ 만약 볼륨을 설정하고 싶다면 다음과 같이 -v 옵션을 주고 컨테이너를 생성합니다. ▼ 이제 도커의 ps 명령을 통해 mysql 컨테이너가 잘 만들어졌는지 확인..
스프링 부트 도커 파일 설정 ▼ 최상위 경로에 다음과 같이 docker 파일을 만들어줍니다. EXPOSE에 원하는 포트를 입력합니다. FROM - JDK를 설정합니다. ENV - 환경변수 설정를 설정합니다. WORKDIR - 환경변수를 경로로 지정합니다. COPY - 빌드된 jar 파일을 application.jar의 파일명으로 복사합니다. EXPOSE - 실행될 포트를 설정합니다. CMD - 명령어 옵션을 입력합니다. 빌드 및 컨테이너 실행 ▼ 프로젝트를 빌드하기 전에 gradlew 파일을 실행 가능하도록 권한을 변경합니다. ▼ gradlew를 이용해서 프로젝트를 빌드합니다. -x 옵션으로 test 프로젝트는 빌드하지 않습니다. ▼ 도커 이미지 생성을 위해서 빌드를 합니다. 임의로 my라는 이름을 주었..