Docker 컴포즈
·
Cloud/Docker
■ [참고] docker CMD vs docker compose CMD- docker CMD → 하나의 컨테이너 관리- docker-compose CMD → 여러개의 컨테이너 관리 ■ [참고] Dockerfile 파일 vs docker-compose.yml- dockerfile → 컨테이너 이미지를 빌드- docker-compose.yml → 컨테이너 기동/종료/재시작 ■ 도커 컴포즈 설치 □ 도커 데스크 탑□ Docker CLI Compose Plugin 설치 $ yum -y install docker-compose-plugin$ docker compose version □ 독립형 설치(바이너리 설치)$ curl -SL https://github.com/docker/compose/releases/dow..
Docker 이미지 생성
·
Cloud/Docker
■ Docker CMD를 사용하여 이미지 생성- docker commit CMD (Container → Image)→ 용도 : 명령어를 사용한 이미지 제작# docker commit CONTAINER IMAGE# docker commit -a "Author' -m 'Message' CONTAINER IMAGE [참고] 도커 이미지를 만드는 과정 (ㄱ) 베이스 이미지 다운로드# docker pull ubuntu:18.04 (ㄴ) 컨테이너 기동 & 접속# docker run -it --name myweb ubuntu:18.04 (ㄷ) 선수 패키지 설치 & 소스 코드 빌드# apt-get update# apt-get install default-jdk git# git clone https://github.co..
Docker 리소스 제한
·
Cloud/Docker
■ CPU 제한# docker run -d --name c1 -cpuset-cpus 0-3 IMAGE# dockrt run -d --name c1 -c 2048 IMAGE# docker stats ■ MEM 제한# docker run -d --name c1 -m 100M --memory-swap 200m IMAGE# docker run -d --name c1 -m 100M --oom-kill-disable=true IMAGE# docker stats ■ Block I/O 제한# docker run -d --name c1 --device-write-bps /dev/sda:10mb IMAGE# docker run -d --name c1 --device-write-iops /dev/sda:100 IMAGE# ..
Docker 컨테이너 운용
·
Cloud/Docker
■ 컨테이너 연결(attach) /해제(detach) □ 컨테이너  콘솔 작업* 연결(attach) - # docker attach myweb* 해제(detach) -  □ 컨테이너 터미널 작업* 연결 - # docker exec -it myweb /bin/bash* 해제 - # exit ■ 컨테이너 프로세스 확인# docker top myweb ■ 컨테이너 이름 변경# docker rename myweb mysv ■ 컨테이너 파일 복사# docker cp index.html myweb:/usr/share/ngninx/html/index.html# docker cp myweb:/etc/nginx/nginx.conf nginx.conf ■ 컨테이너 차분 확인# docker diff myweb ■ 컨테이너 ..
Docker 네트워크 관리
·
Cloud/Docker
■ Docker Network Driver-driver- - network name--bridge ⇒ bridge (VMnet8)-host ⇒ host (VMnet0)-null ⇒ none-bridge ⇒ mynet (VMnet8) ■ 도커 컨테이너 네트워크 설정# docker run -d --name web -p 80:80 \--network mynet \--ip 172.18.0.5 \--hostname www.test.com \--add-host www.example.com:172.18.0.10 \--dns 8.8.8.8 \nginx ■ 도커 네트워크 생성# docker network create mynet ■ 도커 네트워크 목록 & 상세 정보 확인# docker network ls# docker ..
Docker 볼륨 관리
·
Cloud/Docker
■ 도커 볼륨 생성# docker volume create webvol ■ 도커 볼륨 사용# docker run -d --name web -p 80:80 -v webvol:/usr/share/nginx/html njinx ■ 도커 볼륨 확인 & 상세 정보 확인# docker volume ls# docker volume inspect webvol# docker inspect -f "{{ .Mounts }}" web ■ 도커 볼륨 삭제# docker volume rm webvol ■ volume 방식 vs bind mpunt 방식 □ Volume(볼륨생성)# docker volume create webvol(컨테이너 기동)# docker run -d --name web -p 80:80 -v webvol:/..
Docker 컨테이너 관리
·
Cloud/Docker
■ 컨테이너 생성# docker create --name web -p 80:80 nginx ■ 컨테이너 생성 & 시작[참고] “docker create” vs “docker run”- docker create → pull + create- docker run → pull + create + start# docker run -d --name web -p 80:80 nginx# docker run -it --name web -p 80:80 nginx# docker run --rm --name web --network bridge busybox ip addr ■ 컨테이너 시작/종료/재시작# docker start mycontainer# docker stop mycontainer# docker restart m..
Docker 이미지 관리
·
Cloud/Docker
■ 이미지 검색# docker search nginx# docker search myregistry:8443/nginx ■ 이미지 다운로드# docker pull nginx# docker pull myregistry:8443/nginx ■ 이미지 목록 확인 & 상세 정보 확인# docker images# docker images -a# docker inspect ubuntu# docker inspect -f "{{ .Config.Cmd }}" ubuntu# docker inspect -f "{{ .Config.Cmd }}" $(docker images -q) ■ 이미지 삭제# docker rmi ubuntu ■ 도커 허브 이미지 업로드 □ 이미지 태그 설정# docker tag nginx mss32701..
Docker 설치
·
Cloud/Docker
■ 도커 엔진 설치# yum -y remove runc □ Yum Repository 설치# yum config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo# yum -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin# systemctl enable --now docker.service □ RPM 파일을 직접 받아서 설치# wget https://download.docker.com/linux/centos/8/x86_64/stable/Packages/ * containerd.io-1.6.9-3.1.el8.x..
Ansible 실습 - 12
·
Cloud/Ansible
□ FTP 서버를 구성하는 /home/ansible/project/ftp.yml 파일을 생성한다.□ 플레이북으로 FTP 서버 구성시 조건은 다음과 같다. □ test 관리 노드에서만 실행된다. □ Anonymous FTP 서비스는 비활성화 한다. □ vsftpd 패키지를 사용하여 설치하고, 서비스는 부팅시도 기동된다. □ root 사용자는 원격에서 접근이 가능해야 한다. □ 방화벽에 포트가 영구적으로 등록되어 있어야 한다.
복사 완료! 🌌