본문 바로가기

IT 엔지니어/CLOUD

(24)
Docker Resource Limit 메모리 제한docker run --rm -m 100m --memory-swap 100m mystress \\ stress --vm 1 --vm-bytes 95m -t 30s메모리 할당기 1개로 95mb 점유m 100m: 메모리 제한-memory-swap 100m: 스왑 사용 안 함-vm-bytes: 메모리 점유CPU 제한docker run --rm --cpus="0.5" stress \\ stress --cpu 1 -t 30s-cpus="0.5": 최대 CPU 사용 비율 제한CPU share 방식:docker run -d --cpu-shares=512 ubuntu sleep 300docker run --rm --cpus="0.3" stress\\ stress --cpu 2 -t 30sCPU 2개를 3..
Docker -1 docker0 = 도커의 Gatewaydocker network create (-d bridge) br1docker network create -d host --subnet 192.168.10.0/24 --gateway 192.168.10.1 br1docker network create br0 / bridge=default[Attach / Detach]docker attach [컨테이너명] - 진CTRL + P / Q / Cdocker exec 명령 실행까지 진행 docker run -it --name myweb ubuntu bashdocker exec [컨테이너명] touch /tmp/test.txtdocker exec [이름] ls /tmpdocker exec [이름] ps aux** 꿀팁 **do..
Docker Network 심화 [Network]docker network ls[FILTERING]docker network ls --filter driver=bridge--filter scope=local[Detail]docker network ls --no-truncNETWORK ID NAME DRIVER SCOPE86a7d65c511b15434f7d64de7dbda022f364a5ec374ebd603fff18882e424754 bridge bridge local00f9d8aed7e1312c6b9f5ee221a521d977ba0d31491f81f0366a0a15ea82a03c host ..
Docker file [ CONTAINER 파일 및 디렉터리를 TAR 파일로 생성 ]실행 중이거나 중지된 Container 파일 시스템 전체를 .tar 파일로 저장exportImage나 설정 없이 순수 파일 시스템만 저장하는 백업Image처럼 다시 사용할 수 있게 만들기 위하 준비 단계# docker export [옵션] [Container명/ID]Image(httpd) 다운로드 후 Container 생성 및 실행을 해준다.# docker pull httpd# docker container create --name myweb1 -p 80:80 httpd# docker container run -d --name myweb2 -p 80:80 httpd​​test 디렉터리를 생성하고 진입해 .tar 파일을 저장할 준비를 한다.# ..
Docker Network 다른 CONTAINER 간 통신Network 대역이 서로 다른 Container는 직접 통신이 불가하다.이 경우, 한 Container가 두 Network에 모두 연결되어 있으면Router 역할을 해줘서 다른 Contaienr들끼리 통신할 수 있다.​즉, 서로 다른 Network에 있는 Container끼리 통신하려면, 중간에 연결된 Container에 Routing 경로를 추가해 줘야 하는 것이다.​Container들을 두 개의 서로 다른 Network에 배치하고, 그 사이에 하나의 Container(alpine3)가 Router 역할을 해서 모두 통신이 가능하게 만들기alpine1alpinenet172.18.0.2/16alpine2alpinenet172.18.0.3/16alpine3alpinenet1..
Docker network DOCKER NETWORK[ DNS 수동 지정 ]--dns : Container 내부에서 사용할 DNS 서버 (수동) 지정# docker container run -d --dns [DNS] [Image]# docker container run -d --dns 8.8.8.8 nginx​​[ CONTAINER 내부 HOST 등록 ]지정한 Image 기반으로 새로운 Container 생성실제 DNS 설정을 바꾸는 게 아닌, 해당 Container 안에서만 적용됨# docker container run -it --add-host [Host명]:[IP주소] [Image]--add-host docker1:192.168.10.101로 Container 안에서 docker1 이름을 이 IP로 인식하게 해줬을 뿐, 해당..
Docker DB 1. 네트워크 생성 (컨테이너 간 통신 위해)docker network create wp-net2. DB 컨테이너 생성 (MariaDB)docker run -d \\ --name ***wp-db*** \\ --network wp-net \\ -e MYSQL_ROOT_PASSWORD=rootpw \\ -e MYSQL_USER=wpuser \\ -e MYSQL_PASSWORD=wppw \\ -e MYSQL_DATABASE=wordpress \\ -v wp-db-data:/var/lib/mysql \\ mariadb:latest이 컨테이너는 wordpress라는 데이터베이스를 미리 생성하고,wpuser / wppw로 접속 가능하게 설정함.3. WordPress 컨테이너 생성 (Apac..
Docker volume/bind mount [ VOLUME 관리 ]Image : 읽기 (o)Container : 읽기/쓰기 (o)Volume : Container와 분리된 저장소VOLUME 방식[ VOLUME 방식 ]Docker에서 자체적으로 관리하는 Data 저장소호스트 OS의 /var/lib/docker/volumes 아래에 자동으로 생성되며 Container에 Mount됨Container가 삭제되어도 Volume이 남아 있어서 Data 유지가 가능​지속성이 필요한 Data에 적합 (DB, 파일 스토리지, 이미지 업로드 등)Docker가 권한, 경로 등을 직접 관리해 줘서 운영환경에 매우 안정적​[ VOLUME 홈 디렉터리 ]# cd /var/lib/docker/volumes​[ VOLUME 내부 구조 ]# tree -L 4 /var/lib/..