티스토리 뷰
1. Docker Compose 설치
예상 독서 시간 : 7 분
macOS, Windows 및 64 비트 Linux에서 Compose를 실행할 수 있습니다.
Docker Compose는 의미있는 작업을 위해 Docker Engine을 사용하므로 설정에 따라 Docker Engine을 로컬 또는 원격으로 설치했는지 확인하십시오.
-
Mac 및 Windows 용 Docker Desktop과 같은 데스크탑 시스템에서 Docker Compose는 이러한 데스크탑 설치의 일부로 포함됩니다.
-
Linux 시스템에서 먼저 Docker 가져 오기 페이지에 설명 된대로 OS 용 Docker Engine 을 설치 한 다음 Linux 시스템에 Compose 설치에 대한 지시 사항을 보려면 여기로 돌아 오십시오.
-
루트가 아닌 사용자로 작성을 실행하려면 루트가 아닌 사용자로 Docker 관리를 참조 하십시오 .
아래 지침에 따라 Mac, Windows, Windows Server 2016 또는 Linux 시스템에 pip Compose를 설치하거나 Python 패키지 관리자 사용 또는 컨테이너로 Compose 설치 와 같은 대안에 대해 알아보십시오 .
다른 버전 설치
아래 지시 사항 은 Compose 의 현재 안정 릴리스 ( v1.25.4 ) 설치를 요약 합니다. 다른 버전의 Compose를 설치하려면 제공된 릴리스 번호를 원하는 버전으로 바꾸십시오. 작성 릴리스는 GitHub 의 작성 저장소 릴리스 페이지에 나열되어 있으며 직접 다운로드 할 수도 있습니다 . Compose 시험판 을 설치하려면 시험판 빌드 설치 섹션을 참조하십시오.
2. Linux 시스템에 Compose 설치
Linux에서는 GitHub 의 Compose 저장소 릴리스 페이지 에서 Docker Compose 바이너리를 다운로드 할 수 있습니다 . curl이진 파일을 다운로드하려면 터미널 에서 명령을 실행하는 링크의 지침을 따르십시오 . 이러한 단계별 지침도 아래에 포함되어 있습니다.
의 경우는 alpine, 다음과 같은 종속 패키지가 필요하다 : py-pip, python-dev, libffi-dev, openssl-dev, gcc, libc-dev,와 make.
1. 명령을 실행하여 Docker Compose의 현재 안정 릴리스를 다운로드하십시오.
sudo curl -L "https://github.com/docker/compose/releases/download/1.25.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
참고 : docker-compose설치 후 명령 이 실패하면 경로를 확인하십시오. /usr/bin경로의 다른 디렉토리에 대한 심볼릭 링크를 만들 수도 있습니다 .
2. 바이너리에 실행 권한을 적용하십시오.
sudo chmod +x /usr/local/bin/docker-compose
예를 들면 다음과 같습니다.
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
3. 선택적으로 and 쉘에 대한 명령 완료 를 설치 하십시오 설치를 테스트하십시오.
$ docker-compose --version docker-compose version 1.25.4, build 1110ad01
시험판 빌드에서는 새로운 기능이 출시되기 전에 시험해 볼 수 있지만 안정성이 떨어질 수 있습니다.
3. 업그레이드
Compose 1.2 이하에서 업그레이드하는 경우 Compose를 업그레이드 한 후 기존 컨테이너를 제거하거나 마이그레이션하십시오. 버전 1.3부터 Compose는 Docker 레이블을 사용하여 컨테이너를 추적하고 레이블을 추가하려면 컨테이너를 다시 작성해야하기 때문입니다.
Compose가 레이블없이 작성된 컨테이너를 감지하면 실행을 거부하므로 두 세트로 끝나지 않습니다. 기존 컨테이너를 계속 사용하려면 (예 : 보존하려는 데이터 볼륨이 있으므로) Compose 1.5.x를 사용하여 다음 명령으로 컨테이너를 마이그레이션 할 수 있습니다.
docker-compose migrate-to-labels
또는 보관에 대해 걱정하지 않으면 제거 할 수 있습니다. 작성은 새로운 것을 작성합니다.(예 컨테이너 네임이
myapp_web_1 myapp_db_1 가정하에..)
docker container rm -f -v myapp_web_1 myapp_db_1 ...
4. Docker Compose를 설치 제거
다음을 사용하여 설치 한 경우 Docker Compose를 설치 제거하려면 다음을 수행하십시오 curl.
sudo rm /usr/local/bin/docker-compose
다음을 사용하여 설치 한 경우 Docker Compose를 설치 제거하려면 다음을 수행하십시오 pip.
pip uninstall docker-compose
5. 도커 컴포즈로.. 몽고 디비 설치 하기
1) 파일 작성하기 vi 열고 아래와 같이 작성해봅니다. (docker-compose.yml)
version: '3.7'
services:
mongodb_container:
image: mongo:latest
environment:
MONGO_INITDB_ROOT_USERNAME: root
MONGO_INITDB_ROOT_PASSWORD: rootpassword
ports:
- 27017:27017
volumes:
- mongodb_data_container:/data/db
volumes:
mongodb_data_container:
위의 Docker Compose 파일이란 무엇입니까?
MongoDB 이미지가 있으며 최신 버전이 필요합니다. 이 글을 쓰는 시점에서 최신 버전의 MongoDB는 4.2.2입니다. MongoDB에는 사용자 root와 비밀번호가 rootpassword있습니다. 포트 27017을 호스트 시스템에 노출시킵니다.
또한 데이터 컨테이너를 사용하여이라는 데이터를 저장합니다 mongodb_data_container. 데이터 지속성에 유용하므로 나중에 command를 호출해도 데이터가 삭제되지 않습니다 docker-compose down.
실행해 봅시다.
docker-compose up -d
docker ps
* 실행하면 아래와 같이 도커인스톨이 안됐다고 메세지가 뜹니다. 도커를 인스톨 해줍니다.
또 에러가 발생하네요
도커를 스타트 해줍니다. [systemctl start docker]
결과는 다음과 같습니다.
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
4056a520c8ea mongo:latest "docker-entrypoint.s…" 19 hours ago Up 19 hours 0.0.0.0:27017->27017/tcp mongodb_mongodb_container_1
잘 보이고 MongoDB 컨테이너가 잘 실행되고 있습니다.
데이터 컨테이너를 확인하려면 아래 명령으로 확인하십시오.
docker volume ls
아래와 같이 표시됩니다.
DRIVER VOLUME NAME local mongodb_mongodb_data_container
MongoDB 서버에 연결하는 방법
1. 몽고 디비 실행
도커 프로세스를 확인후 도커안까지 들어가 몽고 디비 실행까지 해봅니다.
mongo admin -u root -p rootpassword
로컬 호스트 포트 27017에 연결됩니다.
주의 mongo명령이 컴퓨터에 설치되어 있어야합니다.
Linux에서는 설치 mongodb-org-shell만 되어야합니다 .
자세한 내용은 https://docs.mongodb.com/manual/installation/을 참조하십시오.
보너스! mongo shell을 통해 로그인 한 후 몇 가지 빠른 팁
유용한 명령들.
데이터베이스 표시 하는 명령어 입니다.
show dbs
존재하지 않는 새 데이터베이스를 작성하십시오.
use mydatabase
컬렉션 표시 :
show collections
컬렉션의 내용 / 문서 표시 :
db.your_collection_name.find()
컬렉션에 데이터를 저장하십시오.
db.your_collection_name.save({"name":"Sony AK"})
데이터베이스 버전 표시 :
db.version()
이제 원하는 목적으로 로컬 MongoDB 데이터베이스 서버를 즐길 수 있습니다. 나 에게이 설정은 테스트 목적으로 적합합니다.
MongoDB 서버를 중지하는 방법
모든 컨테이너를 삭제하지 않고 데이터베이스를 종료합니다.
docker-compose stop
데이터베이스를 종료하고 모든 컨테이너를 삭제합니다.
docker-compose down
그게 다야 우리는 끝났습니다. 이미 일부 데이터를 작성하면 사라지지 않습니다.
위 코드는 GitHub 리포지토리 ( https://github.com/sonyarianto/docker-compose-mongodb) 에서도 제공됩니다.
감사합니다. 즐기시기 바랍니다.
'4. Docker 관련' 카테고리의 다른 글
docker Keycloak 설치 해보기 (0) | 2021.04.11 |
---|---|
3. 도커 push 도커파일 ... 만들기 (0) | 2020.04.10 |
2. 도커 사용법 익혀보자 (0) | 2020.03.30 |
12탄!! 도커 깔끔 삭제하기 그리고... 연습하기 (0) | 2020.03.18 |
4. Docker 설치및 소나큐브 설치 방법 (0) | 2019.09.23 |
- Total
- Today
- Yesterday
- 버쳐박스
- 오라클 트러블 슈팅(성능 고도화 원리와 해법!)
- 커널
- directory copy 후 startup 에러
- [오라클 튜닝] instance 튜닝2
- 설치하기(HP-UX)
- 여러서버 컨트롤
- K8s
- MSA
- (InstantClient) 설치하기(HP-UX)
- 우분투
- startup 에러
- 쿠버네티스
- 오라클 인스턴트클라이언트(InstantClient) 설치하기(HP-UX)
- 5.4.0.1072
- 오라클 홈디렉토리 copy 후 startup 에러
- [오라클 튜닝] sql 튜닝
- 오라클
- 트리이스
- pod 상태
- 튜닝
- ORACLE 트러블 슈팅(성능 고도화 원리와 해법!)
- 코로나19
- Oracle
- CVE 취약점 점검
- 테라폼
- 스토리지 클레스
- 앤시블
- 키알리
- ubuntu
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |