![[Docker] docker commit 명령을 이용하여 이미지 빌드하기](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FcI88yJ%2FbtrBZsgnD59%2FAAAAAAAAAAAAAAAAAAAAAIjLVG86d_FkbZI6ssttCjVreJ1e3TNfGmE5hN8ZU6EP%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1753973999%26allow_ip%3D%26allow_referer%3D%26signature%3D%252B5pCfY0GlsvR6hesg43itIjzOe0%253D)
✔️ Docker 이미지 빌드 방법 docker commit 명령 Dockerfile ✔️ 명령으로 이미지 생성하기 우선 컨테이너를 띄운다. vagrant@docker ~ docker run -d httpd 2b0edf3314a92f329e117f8e706732afcd108b882d97ca704d89108d861193ee vagrant@docker ~ docker exec -it 2b bash root@2b0edf3314a9:/usr/local/apache2# pwd /usr/local/apache2 root@2b0edf3314a9:/usr/local/apache2# cd htdocs/ root@2b0edf3314a9:/usr/local/apache2/htdocs# ls index.html..
![[Docker] Netfilter의 역할](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FNEJfm%2FbtrBNUWKnx7%2FAAAAAAAAAAAAAAAAAAAAAGLvcR0JukZlBVL8zkG9xx07cCtogb55rO3BkJ998I5x%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1753973999%26allow_ip%3D%26allow_referer%3D%26signature%3D%252FeSNpfNLgq6o4npevanlHD0Zw8Y%253D)
✔️ Docker에서의 Netfilter Docker에서의 Netfilter가 어떤 역할을 하는지 알아보자 docker0가 있고 172.17.0.2 ip를 가지는 하나의 컨테이너가 연결되어 있다. docker0는 Netfilter의 NAT 기능을 통해 인터넷 통신을 할 수 있다. 컨테이너가 8.8.8.8 (google DNS 서버)로 접속을 시도한다고 하자 컨테이너의 private ip SRC : 172.17.0.2 에서 → 목적지인 DST : 8.8.8.8로 찾아갈 수 없다. enp0s3에 설정되어 있는 ip는 10.0.2.15이다. 우리는 가상화를 쓰고 있기 때문에 이 ip도 private ip이며 해당 ip도 또 다시 NAT을 거쳐서 외부로 통신하게 된다. 즉, 출발지를 10.0.2.15 로 목적지..
![[Docker] Docker Network - 2](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2Fv7JN8%2FbtrBKpYfOxC%2FAAAAAAAAAAAAAAAAAAAAAKMS0rzympi7YREK8M6VEsc0Eu--a_6GHuJH4jbB4iru%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1753973999%26allow_ip%3D%26allow_referer%3D%26signature%3D9kcoBGpCcCM9Bgwl3c6S9xbwYNg%253D)
✔️ 네트워크 플러그인 종류 bridge host null .... 자주 사용하는 건 bridge와 host이다. ✔️ 브릿지 네트워크 ✔️ 호스트에서 확인하는 방법 인터페이스 확인 ip addr show docker0 : 브릿지 vethX : 가상 인터페이스 브릿지 확인 명령 설치 sudo apt install bridge-utils brctl show NAT 테이블 확인 sudo iptables -t nat -L -n MASQUERADE: Source NAT ✔️ 컨테이너에서 확인하는 방법 sudo apt update sudo apt install iproute2 ip addr show ip route ✔️ 사용 예제 vagrant@docker ~ docker network ls NETWORK..
![[Docker] Docker Network - 1](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FKoc66%2FbtrBNb4UWgs%2FAAAAAAAAAAAAAAAAAAAAAPSZfOj-yxe25gct8A3JEvbJ5EuEgVRMik6DYYoHandH%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1753973999%26allow_ip%3D%26allow_referer%3D%26signature%3DLBDqhqgYG4y86TXEBdyd%252Fat%252BVm0%253D)
✔️ Docker Network 개요 우분투 컨테이너를 하나 띄우고 ip a s 명령을 실행한다. root@779202aa7aac:/# apt install iproute2 root@779202aa7aac:/# ip a s 1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever 55: eth0@if56: mtu 1500 qdisc noqueue state UP group default link/ether 02:42:a..
![[Examtopics] AWS SAA Dump #1 ~ 50](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FebqSgo%2FbtrBGgzkihy%2FAAAAAAAAAAAAAAAAAAAAAAc5eBIfz1vc7NtgwYCXkR9HLB2AQ5wb8Io4C2rvw6jd%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1753973999%26allow_ip%3D%26allow_referer%3D%26signature%3Dw3n7Q48RCzFwZFAAV76InGMxRAU%253D)
질문 #1 한 회사가 컨테이너를 활용하여 AWS에서 웹 애플리케이션을 개발하고 있습니다. 어느 순간에 조직은 웹 애플리케이션의 세 가지 인스턴스를 실행해야 합니다. 증가하는 수요를 따라잡으려면 애플리케이션을 확장할 수 있어야 합니다. 경영진은 비용에 민감하지만 애플리케이션에 대한 접근성이 높아야 한다는 데 동의합니다. 솔루션 설계자는 어떤 권장 사항을 제시해야 합니까? A. lambda:InvokeFunction을 작업으로 사용하고 *를 보안 주체로 사용하여 함수에 실행 역할을 추가합니다. B. Lambda:InvokeFunction을 작업으로, Service:amazonaws.com을 보안 주체로 사용하여 함수에 실행 역할을 추가합니다. C. lambda:'*를 작업으로, Service:events.a..
✔️ Docker Volume 개요 이미지는 하나 이상의 layer로 구성되어 있다. 이미지의 레이어는 어떻게 확인하는가 ? 1) 이미지를 받을 때(pull) 확인할 수 있다. 2) docker inspect 명령 실행 후 layer에서 확인할 수 있다. "RootFS": { "Type": "layers", "Layers": [ "sha256:e59fc94956120a6c7629f085027578e6357b48061d45714107e79f04a81a6f0c" ] }, 이미지는 immutable이므로 절대 바뀌지 않는다. 이미지로 컨테이너를 만들게 되면 기존 이미지의 내용이 변하지 않고 컨테이너로 생성된다. 즉 이미지는 read-only 상태이며 쓰기 작업을 할 수 없다. 만약 그 위에 read/write..