일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- RFC
- 자바
- 코딩입문
- 코드라떼
- 람다
- 데이터베이스기초
- 백엔드 강의
- 안드로이드
- 백엔드 코딩
- 개발자
- 자바8
- Android
- java
- CodeCommit
- java8
- C포인터
- CodeLatte
- 자료구조강의추천
- 데이터베이스강의
- lamda
- 자바자료구조
- Stream
- 정규식
- thread
- 스타트업
- 코딩독학방법
- 스트림
- 문돌이
- 백엔드 개발 코딩 강의
- 오류제어
- Today
- Total
이병록의 개발 블로그
Docker 명령어 정리(개인) 본문
최종 수정 일: 2020-07-26
개인적으로 사용하는 Docker 사용 명령어와 관련된 것을 정리한다.
Docker Image 관련
Docker Image 가져오기
$ docker image pull [옵션] 이미지명[:태그명]
# 예시
$ docker imasge pull centos:7
Docker Image 목록
Input
$ docker image ls [옵션] [레포지토리이름]
$ docker images [옵션] [레포지토리이름]
# 예시
$ docker image ls
Options
--all, -a 모든 이미지를 표시
--digests 다이제스트 표시 여부
--no-trunc 결과를 모두 표시
--quite, -q 도커 이미지 ID만 표시
-f, --filter=[필터] 이미지를 필터링
--format=[string]
Output
REPOSITORY TAG IMAGE ID CREATED SIZE
test3 1.0 39dfeeb58bfd 14 minutes ago 290MB
test2 latest f76f168817aa 20 minutes ago 290MB
nginxtest latest 06cbe4966b55 28 minutes ago 290MB
testnginx latest f20a3c85b67d 33 minutes ago 290MB
nginx 1.0 75ca566bbf73 50 minutes ago 290MB
nginx latest 8cf1bfb43ff5 4 days ago 132MB
centos 7 b5b4d78bc90c 2 months ago 203MB
Docker Image 확인
Input
$ docker image inspect [옵션] [이미지명]
# 예시
$ docker image inspect centos:7
$ docker image inspect --format="{{.DockerVersion}}" centos:7
Options
--all, -a 모든 이미지를 표시
--digests 다이제스트 표시 여부
--no-trunc 결과를 모두 표시
--quite, -q 도커 이미지 ID만 표시
-f, --filter=[필터] 이미지를 필터링
--format=[string]
Output
[
{
"Id": "sha256:39dfeeb58bfd74277d1b4314a144510eda2402f6ccbcc94798d0b4c54cc3b5c2",
"RepoTags": [
"test3:1.0"
],
"RepoDigests": [],
"Parent": "sha256:f76f168817aaa0b943a576ac72c41710eec98ed5be34fbd91117d5e63e750112",
"Comment": "test",
"Created": "2020-07-26T12:33:34.9810725Z",
"Container": "d2fa6051abdfe5406aaf294309bb50374040edc1d0ca25173848aa62e147e5e3",
"ContainerConfig": {
"Hostname": "d2fa6051abdf",
"Domainname": "",
"User": "",
"AttachStdin": false,
"AttachStdout": false,
"AttachStderr": false,
"ExposedPorts": {
"80/tcp": {}
},
"Tty": false,
"OpenStdin": false,
"StdinOnce": false,
"Env": [
"PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
],
"Cmd": [
"/bin/sh",
"-c",
"nginx -g 'daemon off;'"
],
"Image": "test2",
"Volumes": null,
"WorkingDir": "",
"Entrypoint": null,
"OnBuild": null,
"Labels": {
"org.label-schema.build-date": "20200504",
"org.label-schema.license": "GPLv2",
"org.label-schema.name": "CentOS Base Image",
"org.label-schema.schema-version": "1.0",
"org.label-schema.vendor": "CentOS",
"org.opencontainers.image.created": "2020-05-04 00:00:00+01:00",
"org.opencontainers.image.licenses": "GPL-2.0-only",
"org.opencontainers.image.title": "CentOS Base Image",
"org.opencontainers.image.vendor": "CentOS"
}
},
"DockerVersion": "19.03.8",
"Author": "",
"Config": {
"Hostname": "d2fa6051abdf",
"Domainname": "",
"User": "",
"AttachStdin": false,
"AttachStdout": false,
"AttachStderr": false,
"ExposedPorts": {
"80/tcp": {}
},
"Tty": false,
"OpenStdin": false,
"StdinOnce": false,
"Env": [
"PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
],
"Cmd": [
"/bin/sh",
"-c",
"nginx -g 'daemon off;'"
],
"Image": "test2",
"Volumes": null,
"WorkingDir": "",
"Entrypoint": null,
"OnBuild": null,
"Labels": {
"org.label-schema.build-date": "20200504",
"org.label-schema.license": "GPLv2",
"org.label-schema.name": "CentOS Base Image",
"org.label-schema.schema-version": "1.0",
"org.label-schema.vendor": "CentOS",
"org.opencontainers.image.created": "2020-05-04 00:00:00+01:00",
"org.opencontainers.image.licenses": "GPL-2.0-only",
"org.opencontainers.image.title": "CentOS Base Image",
"org.opencontainers.image.vendor": "CentOS"
}
},
"Architecture": "amd64",
"Os": "linux",
"Size": 289588636,
"VirtualSize": 289588636,
"GraphDriver": {
"Data": {
"LowerDir": "/var/lib/docker/overlay2/c509df7a59fa07c1917c801cadf9a43a367a2d69f1516cae8e4f8c9aac9b8f47/diff:/var/lib/docker/overlay2/45ac6aa08a898126d3b3d849b472df12aebfc0cde9b4beef8b9e18eda6ace429/diff:/var/lib/docker/overlay2/5a99f90b087ec728de5d6acc39ca89f9736497726b0f587690f315bcbf0f36e3/diff",
"MergedDir": "/var/lib/docker/overlay2/7b6a939aabfe3e18e00c5138285fa5bb066dd0c7ba71634eddaafbd209695231/merged",
"UpperDir": "/var/lib/docker/overlay2/7b6a939aabfe3e18e00c5138285fa5bb066dd0c7ba71634eddaafbd209695231/diff",
"WorkDir": "/var/lib/docker/overlay2/7b6a939aabfe3e18e00c5138285fa5bb066dd0c7ba71634eddaafbd209695231/work"
},
"Name": "overlay2"
},
"RootFS": {
"Type": "layers",
"Layers": [
"sha256:edf3aa290fb3c255a84fe836109093fbfeef65c08544f655fad8d6afb53868ba",
"sha256:71e852d13a37409c751a88605c394da4d3fadfe5c1c092e77aae72d6270da441",
"sha256:4c9d5ff8a6c00b4e38239db15e2d39ad2a96d1c613cb2d7462b090a24b6741f3",
"sha256:7e21c07e44cb7977205e36a6669bad5967d35d693393fa94237920eeee37c767"
]
},
"Metadata": {
"LastTagTime": "2020-07-26T12:33:34.9852095Z"
}
}
]
Docker Image 검색
Input
$ docker search [옵션] [검색 키워드]
# 예시
$ docker search --limit 7 centos:7
Options
--no-trunc 결과 모두 보여주기
--limit N건의 검색 결과 표시
--filter=starts=n 즐겨찾기 갯수(n) 이상을 지정하여 검색
-f, --filter=[필터] 필터링
--format=[string]
Output
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
mjstealey/mariadb-galera MariaDB Galera cluster in Docker - based fro… 1 [OK]
bbania/centos Build image based on centos:7 0
mesosphere/freeipa-server A freeIPA v4.3 container based on centos:7. … 0
waffleimage/centos7 Centos:7 with systemd and ssh running 0
acktsw/centos centos:7 0 [OK]
macedigital/nodejs Latest NodeJS for CentOS:7 0 [OK]
grossws/nginx nginx (mainline) on grossws/centos:7 0 [OK]
Docker Image 삭제
Input
$ docker image rm [옵션] 이미지명 [이미지명]
# 예시
$ docker image rm nginx:latest
Options
--force, -f 이미지 강제 삭제
--no-prune 중간 이미지를 삭제하지 않음
Output
Untagged: nginx:latest
Untagged: nginx@sha256:0e188877aa60537d1a1c6484b8c3929cfe09988145327ee47e8e91ddf6f76f5c
Deleted: sha256:8cf1bfb43ff5d9b05af9b6b63983440f137c6a08320fa7592197c1474ef30241
Deleted: sha256:f693fa68e7be60da5f2631f94268bb7231278a9e0a10e25798173ce6dd2e4d9d
Deleted: sha256:ed095e8a33da1985dfdb0b098c2e7ffb035f98f2ff98c648bdf67d4b880a7b3d
Deleted: sha256:3a069d285e939b95a82cecf0e6ac9b3ac3c21397f9d1c97276f98551cfa02b3d
Deleted: sha256:18cb14912446a24695198924710f359397929d94acd7d86c8bb0b3dbaa9b672f
Deleted: sha256:95ef25a3204339de1edf47feaa00f60b5ac157a498964790c58c921494ce7ffd
Docker Image 삭제(사용하지 않는 이미지)
컨테이너로 등록되지 않은 이미지를 삭제한다.
Input
$ docker image prune [옵션]
# 예시
$ docker image prune -a
Options
--all, -a 사용하지 않는 이미지 전체 삭제
--force, -f 이미지를 강제로 삭제
-f, --filter=[필터] 필터링
Output
Deleted Images:
untagged: centos:7
untagged: centos@sha256:e9ce0b76f29f942502facd849f3e468232492b259b9d9f076f71b392293f1582
untagged: test3:1.0
deleted: sha256:39dfeeb58bfd74277d1b4314a144510eda2402f6ccbcc94798d0b4c54cc3b5c2
deleted: sha256:9342f613769c855676ebcbd1e557d228be960e93927ece09a2fbd29efffd1432
untagged: nginx:1.0
deleted: sha256:75ca566bbf73c918e87437974056dfed64b1c75f983edc1546fa7c4e79b21416
untagged: testnginx:latest
deleted: sha256:f20a3c85b67da3312617611d208f2caf68138750b7d5495c675e30a17969a890
Docker Container 관련
Docker Container 생성 후 시작
Input
$ docker container run [옵션] 이미지명[:태그명] [인수]
$ docker run [옵션] 이미지명[:태그명] [인수]
# 예시
$ docker run -it --rm centos:7 /bin/bash
$ docker run -d centos:7 /bin/bash
$ docker run -p 80:80 -d nginx:latest --name 'nginx2'
Options
-attach, -a 표준 입력, 표준 출력, 포준 오류 출력에 붙인다.
--cidfile 컨테이너 ID를 파일로 출력
--detach, -d 컨테이너를 생성하고 백그라운드에서 실행
--interactive, -i 컨테이너의 표준입력을 연다
--tty, -t 단말기 디바이스를 사용한다.
--rm 컨테이너 실행 후 삭제한다.
Network Options
--add-host=[호스트명:IP주소] 컨테이너의 /etc/hosts/에 호스트명과 IP주소를 정의
--dns=[IP주소] 컨테이너용 DNS 서버의 IP주소 지정
--expose 포트 번호 할당
--mac-address=[MAC 주소] 컨테이너의 MAC 주소를 지정
--network=[bridge | none | container:<name | id> | host | NETWORK], --net 컨테이너의 네트워크를 지정
--hostname, -h 컨테이너 자신의 호스트명을 설정
--publish, -p[호스트의 포트번호]:[컨테이너의 포트 번호] 호스트와 컨테이너의 포트 매핑
--publish-all, -P 호스트의 임의의 포트를 컨테이너에 할당
Container Resource Options
--cpu-shares, -c CPU의 사용 배분(비율)
--memory, -m 사용할 메모리를 제한하여 실행
--volume=[호스트의 디렉토리]:[컨테이너의 디렉토리], -v 호스트와 컨테이너의 디렉토리를 공유
Container Env Options
--env=[환경변수], -e 환경변수를 설정
--env-file=[파일명] 환경변수를 파일로 설정
--read-only=[true | false] 컨테이너의 파일 시스템을 읽기 전용으로 만듬
--workdir=[패스], -w 컨테이너의 작업 디렉토리 지정
--user=[사용자명], -u 사용자명 또는 UID를 지정
Arguments
--name 컨테이너 이름을 작성한다
Output
$ [root@02952a2e8f92 /]#
Docker Container 시작
Input
$ docker container start [옵션] <컨테이너 식별자> [컨테이너 식별자]
$ docker start [옵션] <컨테이너 식별자> [컨테이너 식별자]
# 예시
$ docker start nginx
Options
-a, --attach
--checkpoint=[string]
--checkpoint-dir=[string]
--detach-keys=[string]
-i, --interactive
Docker Container 종료
Input
$ docker container stop [옵션] <컨테이너 식별자> [컨테이너 식별자]
$ docker stop [옵션] <컨테이너 식별자> [컨테이너 식별자]
# 예시
$ docker stop nginx
Options
-t, --time=[int]
Docker Container 재시작
Input
$ docker container restart [옵션] <컨테이너 식별자> [컨테이너 식별자]
$ docker restart [옵션] <컨테이너 식별자> [컨테이너 식별자]
# 예시
$ docker restart nginx -t 30
Options
--time, -t 컨테이너 재시작 시간(second)
Docker Container 일시중지
Input
$ docker container pause <컨테이너 식별자>
$ docker pause <컨테이너 식별자>
# 예시
$ docker pause nginx
Docker Container 재개
Input
$ docker container unpause <컨테이너 식별자>
$ docker unpause <컨테이너 식별자>
# 예시
$ docker unpause nginx
Docker Container 삭제
Input
$ docker container rm [옵션] <컨테이너 식별자> [컨테이너 식별자]
# 예시
$ docker container rm nginx:1.0
Options
--force, -f 실행중인 컨테이너 강제 삭제
--volumes, -v 할당한 볼륨을 삭제
Docker Container 목록
Input
$ docker container ls [옵션]
$ docker ps [옵션]
# 예시
$ docker ps -a
$ docker ps --format={{.ID}}
Options
--all, -a 실행중/정지중을 포함한 모든 컨테이너 출력
--filter, -f 표시할 컨테이너의 필터링
--format 포멧 지정
--last, -n 마지막으로 실행된 n건의 컨테이너만 표시
--lastest, -l 마지막으로 실행된 컨테이너만 표시
--no-trunc 정보를 생략하지 않고 표시
--quite, -q 컨테이너 ID만 표시
--size, -s 파일크기 표시
Output
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
d2fa6051abdf test2 "/bin/sh -c 'nginx -…" 2 hours ago Up 2 hours 0.0.0.0:80->80/tcp condescending_hopper
Docker Container 가동 상태
실행중인 컨테이너의 상태를 확인할 수 있다.
Ctrl + C로 종료할 수 있다.
Input
$ docker container stats [컨테이너 식별자]
$ docker stats [컨테이너 식별자]
# 예시
$ docker container stats roka
Output
CONTAINER ID NAME CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS
d2fa6051abdf condescending_hopper 0.00% 2.266MiB / 1.944GiB 0.11% 5kB / 3.29kB 0B / 0B 2
Docker Container 내부 실행 프로세스 상태
리눅스의 top과 비슷하다.
Input
$ docker container top [컨테이너 식별자]
$ docker top [컨테이너 식별자]
# 예시
$ docker top nginx
Ouput
PID USER TIME COMMAND
5218 root 0:00 nginx: master process nginx -g daemon off;
5253 999 0:00 nginx: worker process
Docker Container Port 매핑 확인
Input
$ docker container port 컨테이너
$ docker port 컨테이너
# 예시
$ docker container port nginx
Output
$ 80/tcp -> 0.0.0.0:80
Docker Container 이름 변경
Input
$ docker container rename 이전_컨테이너명 이후_컨테이너명
$ docker rename 이전_컨테이너명 이후_컨테이너명
# 예시
$ docker container condescending_hopper roka_container
Output
$ docker ps -l
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
d2fa6051abdf test2 "/bin/sh -c 'nginx -…" 2 hours ago Up 2 hours 0.0.0.0:80->80/tcp roka_container
Docker Container 내부 파일의 복사
Input
$ docker container cp <컨테이너 식별자>:<컨테이너 안의 파일 경로> <호스트의 디렉토리 경로>
$ docker container cp <호스트의 파일> <컨테이너 식별자>:<컨테이너 안의 파일 경로>
# 예시
$ docker container cp test.txt roka_container:/
Docker container /bin/bash로 실행되는 컨테이너 연결
Input
$ docker container attach <컨테이너 식별자>
$ docker attach <컨테이너 식별자>
# 예시
$ docker contaienr attach roka_container
Options
--detach-keys=[키]
--no-stdin
--sig-proxy
Output
[root@d2fa6051abdf /]#
Docker container 프로세스 실행
Input
$ docker container exec [옵션] <컨테이너 식별자> <실행할 명령> [인수]
$ docker exec [옵션] <컨테이너 식별자> <실행할 명령> [인수]
# 예시
$ docker exec -it roka_container /bin/bash
Options
-d, --detach
--detach-keys=[키]
-e, --env=list
-i, --interactive
--privileged
-t, --tty
-u, --user=[username, UID]
-w, --workdir=[디렉토리]
Output
[root@d2fa6051abdf /]#
Docker Network 관련
Docker는 기본값으로 bridge, host, none 세 개의 네트워크를 만든다.
Docker Network 목록
Input
$ docker network ls [옵션]
# 예시
$ docker network ls
Options
--filter=[], -f 출력을 필터링
--no-trunc 상세정보 출력
--quite, -q 네트워크 ID만 출력
Output
NETWORK ID NAME DRIVER SCOPE
44874b2e56a1 bridge bridge local
a5fe362538b5 host host local
cf0b1b2c24cc none null local
Docker Network 확인
Input
$ docker network inspect [옵션] 네트워크명
# 예시
$ docker network inspect roka-network
Output
[
{
"Name": "roka-network",
"Id": "0d22e9111a418a1f6f5ab7af86b4f748c67961d21906e3acbaae609bb3605274",
"Created": "2020-07-26T14:26:16.3162825Z",
"Scope": "local",
"Driver": "bridge",
"EnableIPv6": false,
"IPAM": {
"Driver": "default",
"Options": {},
"Config": [
{
"Subnet": "172.18.0.0/16",
"Gateway": "172.18.0.1"
}
]
},
"Internal": false,
"Attachable": false,
"Ingress": false,
"ConfigFrom": {
"Network": ""
},
"ConfigOnly": false,
"Containers": {
"d2fa6051abdfe5406aaf294309bb50374040edc1d0ca25173848aa62e147e5e3": {
"Name": "condescending_hopper",
"EndpointID": "db17d182c20a26615be17aeb3cb3b6bdff93555af23cc5c3f7ff9355da97e95e",
"MacAddress": "02:42:ac:12:00:02",
"IPv4Address": "172.18.0.2/16",
"IPv6Address": ""
}
},
"Options": {},
"Labels": {}
}
]
Docker Network 생성
Input
$ docker network create [옵션] 네트워크명
# 예시
$ docker network create --driver=bridge roka-network
Options
--driver=[overlay | bridge], -d 네트워크 브릿지 또는 오버레이
--ip-range 컨테이너에 할당하는 IP 주소의 범위를 지정
--subnet 서브넷을 CIDR 형식으로 지정
--ipv6=[true | false] IPv6 네트워크 유효화 여부
-label 네트워크에 설정하는 라벨
Output
NETWORK ID NAME DRIVER SCOPE
0d22e9111a41 roka-network bridge local
Docker Network 삭제
Input
$ docker network rm [옵션] 네트워크명
# 예시
$ docker network rm roka-network
Docker Network 연결
Input
$ docker network connect [옵션] 네트워크명 컨테이너명
# 예시
$ docker network connect roka-network condescending_hopper
Options
--alias 앨리어스
--driver-opt 네트워크 드라이버 옵션
--ip IPv4 주소
--ip6 IPv6 주소
--link 다른 컨테이너에 링크
--link-local-ip 컨테이너를 위한 로컬 링크 주소 추가
Output
$ docker inspect condescending_hopper
...
"Networks": {
"bridge": {
"IPAMConfig": null,
"Links": null,
"Aliases": null,
"NetworkID": "44874b2e56a1b58bf997b24f88afd4ef118c032e89e31ba0fdcd9b041b069a20",
"EndpointID": "9432dd2ed6b1a0cfec232a8ec8c7a93346564e21be0a61d119c323b9b7e0a454",
"Gateway": "172.17.0.1",
"IPAddress": "172.17.0.2",
"IPPrefixLen": 16,
"IPv6Gateway": "",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"MacAddress": "02:42:ac:11:00:02",
"DriverOpts": null
},
"roka-network": {
"IPAMConfig": {},
"Links": null,
"Aliases": [
"d2fa6051abdf"
],
"NetworkID": "0d22e9111a418a1f6f5ab7af86b4f748c67961d21906e3acbaae609bb3605274",
"EndpointID": "db17d182c20a26615be17aeb3cb3b6bdff93555af23cc5c3f7ff9355da97e95e",
"Gateway": "172.18.0.1",
"IPAddress": "172.18.0.2",
"IPPrefixLen": 16,
"IPv6Gateway": "",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"MacAddress": "02:42:ac:12:00:02",
"DriverOpts": {}
}
}
...
Docker Network 연결 해제
Input
$ docker network disconnect 네트워크명 컨테이너명
# 예시
$ docker network disconnect roka-network condescending_hopper
Docker Dockfile 관련
Docker 이미지 빌드
Dockerfile의 내용을 하나씩 읽어가며 컨테이너를 실행할 수 있는 이미지를 만든다.
Input
$ docker build -t <이미지 이름> <디렉토리 패스>
$ docker build -t <이미지 이름> -f /path/Dockerfile .
# 예시
$ docker build -t test1 .
Output
Step 1/6 : FROM centos:7
7: Pulling from library/centos
524b0c1e57f8: Pull complete
Digest: sha256:e9ce0b76f29f942502facd849f3e468232492b259b9d9f076f71b392293f1582
Status: Downloaded newer image for centos:7
---> b5b4d78bc90c
Step 2/6 : RUN touch /etc/yum.repos.d/nginx.repo && echo -e '[nginx]\nname=nage repo\nbaseurl=http://nginx.org/packages/centos/7/$basearch/\ngpgcheck=0\nenabled=1' > /etc/yum.repos.d/nginx.repo
---> Running in 465078c7e8bc
Removing intermediate container 465078c7e8bc
---> af274d771a39
Step 3/6 : RUN yum install -y nginx
---> Running in d78880374007
Loaded plugins: fastestmirror, ovl
Determining fastest mirrors
* base: mirror.kakao.com
* extras: mirror.kakao.com
* updates: centosg8.centos.org
Resolving Dependencies
--> Running transaction check
---> Package nginx.x86_64 1:1.18.0-1.el7.ngx will be installed
--> Processing Dependency: openssl >= 1.0.2 for package: 1:nginx-1.18.0-1.el7.ngx.x86_64
--> Running transaction check
---> Package openssl.x86_64 1:1.0.2k-19.el7 will be installed
--> Processing Dependency: make for package: 1:openssl-1.0.2k-19.el7.x86_64
--> Running transaction check
---> Package make.x86_64 1:3.82-24.el7 will be installed
--> Finished Dependency Resolution
....
Step 4/6 : EXPOSE 80
---> Running in e68d7e6cbac0
Removing intermediate container e68d7e6cbac0
---> 6c304c38a062
Step 5/6 : RUN ln -sf /dev/stdout /var/log/nginx/access.log && ln -sf /dev/stderr /var/log/nginx/error.log
---> Running in b457428c2220
Removing intermediate container b457428c2220
---> 88f4dc083165
Step 6/6 : CMD nginx -g 'daemon off;'
---> Running in af245e665f0e
Removing intermediate container af245e665f0e
---> f3819d631ebe
Successfully built f3819d631ebe
Successfully tagged test1:latest
'교육자료' 카테고리의 다른 글
TCP의 흐름제어, 오류제어, 혼잡제어 개념에 대한 개요 (3) | 2020.07.10 |
---|---|
TCP의 흐름제어, 오류제어, 혼잡제어 예제 시나리오 (1) | 2020.06.09 |
온디맨드 이미지 리사이징 (Ondemand Image Resizing) 원리 및 예제 (11) | 2020.02.09 |
AWS를 이용한 간략 지속적 통합 예제, 무중단 배포 자동화 CI & CD, CodeBuild, CodeDeploy, CodePipeline (0) | 2020.01.05 |
기본 정렬 알고리즘의 종류와 정리 (1) | 2020.01.04 |