일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 시스템엔지니어
- cloud engineer
- Server
- 클라우드
- 컴퓨터
- Azure AD
- 가상화
- 시트릭스
- windows
- 그룹정책
- Azure
- 메일보안
- 네트워크
- Exchange Online
- cloud
- aws
- 리눅스
- Docker
- SE
- 시스템 엔지니어
- Entra ID
- 클라우드엔지니어
- network
- windows server
- Microsoft
- Microsoft Azure
- 리눅스마스터1급
- It
- Linux
- Microsoft 365
- Today
- Total
목록리눅스/docker (15)
Cloud System Engineer
호스트에 cpu가 여러게 있을 때 --cpuset-cpus 옵션을 지정해 컨테이너가 특정 cpu만 사용하도록 설정할수있다. cpu 별로 사용량을 확인 할 수 있는 대표적인 도구 apt-get install htop //우분투 yum -y install epel-release && yum-y install htop //centos htop 을 이용하여 현재 cpu 사용량을 측정할 수 있다. #docker run -d --name cpuset_0_3 --cpuset-cpus="0-3" alicek106/stress stress --cpu 4 // 1,2,34 번째 cpu쓰겠다. #docker run -d --name cpuset_0_2 --cpuset-cpus="0-2" alicek106/stress str..
컨테이너를 생성할 때 아무런 옵션없이 생성하면 호스트의 자원을 무한정 제한 없이 쓸 수 있다. 이런 문제를 해결하기 위해 우리는 자원제한을 해야한다. 현재 컨테이너에 설정된 자원 제한을 확인하기 위해 다음과 같이 한다. # docker inspect rsyslog_server 예컨대, CPU 할당을 제한하려면 다음과 같이 한다. # docker update (변경할 자원 제한) (컨테이너 이름) # docker update --cpuset-cpus=1 rsyslog_server 1) 컨테이너 메모리 제한 도커에서 사용할 수 있는 메모리 사용량을 1GB로 제한해 보자. # docker run -d --memory="1g" --name memory_1g nginx # docker inspect memory_..
json-file 로그 사용하기 컨테이너는 표준 출력(StdOut)과 에러(StdErr) 로그를 별도의 메타데이터 파일로 저장하며 이를 확인하는 명령어를 제공한다 먼저 컨테이너를 생성해 간단한 로그를 남겨보자 다음 명령은 mysql5.7 버전의 컨테이너를 생성하고 로그를 확인해 본다. docker run -d --name mysql -e MYSQL_ROOT_PASSWORD=1234 mysql:5.7 이번에는 환경변수 없이 컨테이너를 시작해 본다. 환경변수가 없으면 컨테이너가 시작되지 않는다. # docker run -d --name no_password_mysql mysql:5.7 시작이 되질 않는다. 이때 로그로 컨테이너 상태를 확인하려면 # docker logs no_password_mysql # d..
MACVLAN 네트워크를 사용하는 컨테이너는 기본적으로 호스트와 통신이 불가능하다. 내일 예시에서는 서버1 의 컨테이너는 서버2 와 그 부속 컨테이너와 통신할 수 있지만 정작 자신이 속한 서버와는 통신이 불가능하다. 먼저 도커 2개의 VMWARE 생성한다. centos 7에 macvlan 생성 # docker network create -d macvlan --subnet=192.168.10.0/24 --ip-range=192.168.10.64/28 --gateway=192.168.10.1 -o macvlan_mode=bridge -o parent=ens32 my_macvlan centos 7-2 에 macvlan 생성 # docker network create -d macvlan --subnet=192...
도커 네트워크 컨테이너의 eth0 인터페이스는 호스트의 veth.... 라는 인터페이스와 연결되어 있으며 veth 인터페이스는 docker0 브리지와 바인딩 되어 외부와 통신할수 있다. #brctl show docker0 도커에서 쓸 수있는 네트워크가 무엇이 있는지 확인 #docker netwokr ls #docker network inspect bridge 브리지 네트워크 기본적으로 사용하는 docker0을 사용하는 브리지 네트워크가 아닌 새로운 브리지 타입의 네트워크를 생성한 후, 컨테이너가 사용하도록 해보자. #docker network create --driver bridge mybridge #docker run -i -t --name mynetwork_container --net mybridge..
도커 자체에서 제공하는 볼륨 기능을 사용해 보자! # docker volume create --name myvolume myvolume 이라는 볼륨을 사용하는 컨테이너를 다음과 같은 형식으로 생성해 보자 형식은 [볼륨의 이름]:[컨테이너의 공유 디렉터리] 컨테이너는 볼륨을 컨테이너의 /root 디렉터리에 마운트하므로 /root 디렉터리에 파일을 쓰면 해당 파일이 볼륨에 저장된다. # docker run -i -t --name myvolume_1 -v myvolume:/root/ ubuntu:14.04 echo hello, volume! >> /root/volume 같은 볼륨을 사용하여 또 다른 컨테이너를 생성한 후 , /root를 확인해본다. # docker run -i -t --name myvolume..