728x90
๋ฐ์ํ
์ค๋ช
๐ ์ด๋ฏธ์ง์์ ์ ์ปจํ ์ด๋ ์์ฑ ๋ฐ ์คํ
์ฌ์ฉ๋ฒ
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
์ต์
- ์ฃผ ์ต์
- --name : ์ด๋ฆ ์ง์
- -p : ์ปจํ ์ด๋์ ํฌํธ๋ฅผ ํธ์คํธ์ ๊ฒ์
- -itd : STDIN์ด๊ธฐ, tty ํ ๋น, ๋ฐฑ๊ทธ๋ผ์ด๋ ์ปจํ ์ด๋ ์คํ ๋ฐ ์ปจ๋ฐ์ด๋ id์ธ์
- ์ต์
๋ฆฌ์คํธ
Option Short Default Description --add-host ์ฌ์ฉ์ ์ ์ ํธ์คํธ-IP ๋งคํ(host:ip) ์ถ๊ฐ --annotation API 1.43+ ์ปจํ ์ด๋์ ์ฃผ์ ์ถ๊ฐ(OCI ๋ฐํ์์ผ๋ก ์ ๋ฌ๋จ) --attach -a STDIN, STDOUT ๋๋ STDERR์ ์ฐ๊ฒฐ --blkio-weight ๋ธ๋ก IO(์๋ ๊ฐ์ค์น), 10~1000 ์ฌ์ด, ๋นํ์ฑํํ๋ ค๋ฉด 0(๊ธฐ๋ณธ๊ฐ 0) --blkio-weight-device ๋ธ๋ก IO ๊ฐ์ค์น(์๋ ์ฅ์น ๊ฐ์ค์น) --cap-add Linux ๊ธฐ๋ฅ ์ถ๊ฐ --cap-drop Linux ๊ธฐ๋ฅ ์ญ์ --cgroup-parent ์ปจํ ์ด๋์ ๋ํ ์ ํ์ ์์ cgroup --cgroupns API 1.41+ ์ฌ์ฉํ Cgroup ๋ค์์คํ์ด์ค (host 'host': Docker ํธ์คํธ์ cgroup ๋ค์์คํ์ด์ค์์ ์ปจํ ์ด๋๋ฅผ ์คํํฉ๋๋ค. 'private': ์์ฒด ํ๋ผ์ด๋น cgroup ๋ค์์คํ์ด์ค์์ ์ปจํ ์ด๋๋ฅผ ์คํํฉ๋๋ค. '': ๊ธฐ๋ณธ๊ฐ์ผ๋ก ๊ตฌ์ฑ๋ cgroup ๋ค์์คํ์ด์ค๋ฅผ ์ฌ์ฉํฉ๋๋ค. ๋ฐ๋ชฌ์ -cgroupns-mode ์ต์ (๊ธฐ๋ณธ๊ฐ) --cidfile ํ์ผ์ ์ปจํ ์ด๋ ID๋ฅผ ์๋๋ค. --cpu-count CPU ์(Windows์๋ง ํด๋น) --cpu-percent CPU ๋น์จ(Windows์๋ง ํด๋น) --cpu-period CPU CFS(Completely Fair Scheduler) ๊ธฐ๊ฐ ์ ํ --cpu-quota CPU CFS(Completely Fair Scheduler) ํ ๋น๋ ์ ํ --cpu-rt-period API 1.25+ CPU ์ค์๊ฐ ๊ธฐ๊ฐ์ ๋ง์ดํฌ๋ก์ด ๋จ์๋ก ์ ํ --cpu-rt-runtime API 1.25+ CPU ์ค์๊ฐ ๋ฐํ์์ ๋ง์ดํฌ๋ก์ด ๋จ์๋ก ์ ํ --cpu-shares -c CPU ์ ์ ์จ(์๋์ ๊ฐ์ค์น) --cpus API 1.25+ CPU ์ --cpuset-cpus ์คํ์ ํ์ฉํ CPU(0-3, 0,1) --cpuset-mems ์คํ์ ํ์ฉํ๋ MEM(0-3, 0,1) --detach -d ๋ฐฑ๊ทธ๋ผ์ด๋์์ ์ปจํ ์ด๋๋ฅผ ์คํํ๊ณ ์ปจํ ์ด๋ ID๋ฅผ ์ธ์ํฉ๋๋ค. --detach-keys ์ปจํ ์ด๋ ๋ถ๋ฆฌ๋ฅผ ์ํ ํค ์ํ์ค ์ฌ์ ์ --device ์ปจํ ์ด๋์ ํธ์คํธ ์ฅ์น ์ถ๊ฐ --device-cgroup-rule cgroup ํ์ฉ ์ฅ์น ๋ชฉ๋ก์ ๊ท์น ์ถ๊ฐ --device-read-bps ์ฅ์น์ ์ฝ๊ธฐ ์๋(์ด๋น ๋ฐ์ดํธ ์) ์ ํ --device-read-iops ์ฅ์น์ ์ฝ๊ธฐ ์๋(์ด๋น IO) ์ ํ --device-write-bps ์ฅ์น์ ๋ํ ์ฐ๊ธฐ ์๋(์ด๋น ๋ฐ์ดํธ ์)๋ฅผ ์ ํํฉ๋๋ค. --device-write-iops ์ฅ์น์ ๋ํ ์ฐ๊ธฐ ์๋(์ด๋น IO) ์ ํ --disable-content-trust true ์ด๋ฏธ์ง ํ์ธ ๊ฑด๋๋ฐ๊ธฐ --dns ์ฌ์ฉ์ ์ ์ DNS ์๋ฒ ์ค์ --dns-opt DNS ์ต์ ์ค์ --dns-option DNS ์ต์ ์ค์ --dns-search ์ฌ์ฉ์ ์ ์ DNS ๊ฒ์ ๋๋ฉ์ธ ์ค์ --domainname ์ปจํ ์ด๋ NIS ๋๋ฉ์ธ ์ด๋ฆ --entrypoint ์ด๋ฏธ์ง์ ๊ธฐ๋ณธ ENTRYPOINT ๋ฎ์ด์ฐ๊ธฐ --env -e ํ๊ฒฝ ๋ณ์ ์ค์ --env-file ํ๊ฒฝ ๋ณ์ ํ์ผ ์ฝ๊ธฐ --expose ํฌํธ ๋๋ ํฌํธ ๋ฒ์ ๋ ธ์ถ --gpus ์ปจํ ์ด๋์ ์ถ๊ฐํ API 1.40+ GPU ์ฅ์น(๋ชจ๋ GPU๋ฅผ ์ ๋ฌํ๋ ค๋ฉด 'all') --group-add ์ฐธ์ฌํ ๊ทธ๋ฃน์ ์ถ๊ฐํ์ธ์ --health-cmd ์ํ๋ฅผ ํ์ธํ๊ธฐ ์ํด ์คํํ๋ ๋ช ๋ น --health-interval ๊ฒ์ฌ ์คํ ์ฌ์ด์ ์๊ฐ(ms --health-retries ๋น์ ์์ ๋ณด๊ณ ํ๋ ค๋ฉด ์ฐ์์ ์ธ ์คํจ๊ฐ ํ์ํฉ๋๋ค. --health-start-period API 1.29+ ์ํ ์ฌ์๋ ์นด์ดํธ๋ค์ด์ ์์ํ๊ธฐ ์ ์ ์ปจํ ์ด๋๊ฐ ์ด๊ธฐํ๋๋ ์์ ๊ธฐ๊ฐ(ms --health-timeout ํ ๋ฒ์ ๊ฒ์ฌ๋ฅผ ์คํํ ์ ์๋ ์ต๋ ์๊ฐ(ms --help ์ธ์ ์ฉ๋ --hostname -h ์ปจํ ์ด๋ ํธ์คํธ ์ด๋ฆ --init API 1.25+ ์ ํธ๋ฅผ ์ ๋ฌํ๊ณ ํ๋ก์ธ์ค๋ฅผ ์์งํ๋ ์ปจํ ์ด๋ ๋ด๋ถ์์ ์ด๊ธฐํ๋ฅผ ์คํํฉ๋๋ค. --interactive -i ์ฐ๊ฒฐ๋์ง ์์ ๊ฒฝ์ฐ์๋ STDIN์ ์ด์ด ๋์ญ์์ค. --io-maxbandwidth ์์คํ ๋๋ผ์ด๋ธ์ ์ต๋ IO ๋์ญํญ ์ ํ(Windows์๋ง ํด๋น) --io-maxiops ์์คํ ๋๋ผ์ด๋ธ์ ์ต๋ IOps ์ ํ(Windows์๋ง ํด๋น) --ip IPv4 ์ฃผ์(์: 172.30.100.104) --ip6 IPv6 ์ฃผ์(์: 2001:db8::33) --ipc ์ฌ์ฉํ IPC ๋ชจ๋ --isolation ์ปจํ ์ด๋ ๊ฒฉ๋ฆฌ ๊ธฐ์ --kernel-memory ์ปค๋ ๋ฉ๋ชจ๋ฆฌ ์ ํ --label -l ์ปจํ ์ด๋์ ๋ฉํ๋ฐ์ดํฐ ์ค์ --label-file ์ค๋ก ๊ตฌ๋ถ๋ ๋ ์ด๋ธ ํ์ผ์ ์ฝ์ต๋๋ค. --link ๋ค๋ฅธ ์ปจํ ์ด๋์ ๋งํฌ ์ถ๊ฐ --link-local-ip ์ปจํ ์ด๋ IPv4/IPv6 ๋งํฌ-๋ก์ปฌ ์ฃผ์ --log-driver ์ปจํ ์ด๋์ฉ ๋ก๊น ๋๋ผ์ด๋ฒ --log-opt ๋ก๊ทธ ๋๋ผ์ด๋ฒ ์ต์ --mac-address ์ปจํ ์ด๋ MAC ์ฃผ์(์: 92:d0:c6:0a:29:33) --memory -m ๋ฉ๋ชจ๋ฆฌ ํ๋ --memory-reservation ๋ฉ๋ชจ๋ฆฌ ์ํํธ ์ ํ --memory-swap ๋ฉ๋ชจ๋ฆฌ์ ์ค์์ ๋ํ ๊ฐ๊ณผ ๋์ผํ ์ค์ ์ ํ: ๋ฌด์ ํ ์ค์์ ํ์ฑํํ๋ ค๋ฉด '-1' --memory-swappiness -1 ์ปจํ ์ด๋ ๋ฉ๋ชจ๋ฆฌ ๊ตํ ์กฐ์ (0~100) --mount ์ปจํ ์ด๋์ ํ์ผ ์์คํ ๋ง์ดํธ ์ฐ๊ฒฐ --name ์ปจํ ์ด๋์ ์ด๋ฆ์ ์ง์ ํฉ๋๋ค. --net ์ปจํ ์ด๋๋ฅผ ๋คํธ์ํฌ์ ์ฐ๊ฒฐ --net-alias ์ปจํ ์ด๋์ ๋ํ ๋คํธ์ํฌ ๋ฒ์ ๋ณ์นญ ์ถ๊ฐ --network ์ปจํ ์ด๋๋ฅผ ๋คํธ์ํฌ์ ์ฐ๊ฒฐ --network-alias ์ปจํ ์ด๋์ ๋ํ ๋คํธ์ํฌ ๋ฒ์ ๋ณ์นญ ์ถ๊ฐ --no-healthcheck ์ปจํ ์ด๋ ์ง์ HEALTHCHECK๋ฅผ ๋นํ์ฑํํฉ๋๋ค. --oom-kill-disable OOM Killer ๋นํ์ฑํ --oom-score-adj ํธ์คํธ์ OOM ๊ธฐ๋ณธ ์ค์ ์กฐ์ (-1000~1000) --pid ์ฌ์ฉํ PID ๋ค์์คํ์ด์ค --pids-limit ์ปจํ ์ด๋ PID ์ ํ ์กฐ์ (๋ฌด์ ํ์ธ ๊ฒฝ์ฐ -1๋ก ์ค์ ) --platform API 1.32+ ์๋ฒ๊ฐ ๋ค์ค ํ๋ซํผ์ ์ง์ํ๋ ๊ฒฝ์ฐ ํ๋ซํผ ์ค์ --privileged ์ด ์ปจํ ์ด๋์ ํ์ฅ ๊ถํ ๋ถ์ฌ --publish -p ์ปจํ ์ด๋์ ํฌํธ๋ฅผ ํธ์คํธ์ ๊ฒ์ --publish-all -P ๋ ธ์ถ๋ ๋ชจ๋ ํฌํธ๋ฅผ ์์์ ํฌํธ์ ๊ฒ์ --pull missing ์คํํ๊ธฐ ์ ์ ์ด๋ฏธ์ง ๊ฐ์ ธ์ค๊ธฐ( always, missing, never) --quiet -q ํ ์ถ๋ ฅ ์ต์ --read-only ์ปจํ ์ด๋์ ๋ฃจํธ ํ์ผ ์์คํ ์ ์ฝ๊ธฐ ์ ์ฉ์ผ๋ก ๋ง์ดํธํฉ๋๋ค. --restart no ์ปจํ ์ด๋๊ฐ ์ข ๋ฃ๋ ๋ ์ ์ฉํ ๋ค์ ์์ ์ ์ฑ --rm ์ปจํ ์ด๋๊ฐ ์ข ๋ฃ๋๋ฉด ์๋์ผ๋ก ์ปจํ ์ด๋ ์ ๊ฑฐ --runtime ์ด ์ปจํ ์ด๋์ ์ฌ์ฉํ ๋ฐํ์ --security-opt ๋ณด์ ์ต์ --shm-size /dev/shm์ ํฌ๊ธฐ --sig-proxy true ํ๋ก์ธ์ค์ ๋ํ ํ๋ก์ ์์ ์ ํธ --stop-signal ์ปจํ ์ด๋๋ฅผ ๋ฉ์ถ๋ผ๋ ์ ํธ --stop-timeout API 1.25+ ์ปจํ ์ด๋ ์ค์ง ์๊ฐ ์ ํ(์ด) --storage-opt ์ปจํ ์ด๋์ ์คํ ๋ฆฌ์ง ๋๋ผ์ด๋ฒ ์ต์ --sysctl Sysctl ์ต์ --tmpfs tmpfs ๋๋ ํ ๋ฆฌ ๋ง์ดํธ --tty -t ์์ฌ TTY ํ ๋น --ulimit ๋ฌด์ ํ ์ต์ --user -u ์ฌ์ฉ์ ์ด๋ฆ ๋๋ UID(ํ์: <name --userns ์ฌ์ฉํ ์ฌ์ฉ์ ๋ค์์คํ์ด์ค --uts ์ฌ์ฉํ UTS ๋ค์์คํ์ด์ค --volume -v ๋ณผ๋ฅจ ๋ฐ์ธ๋ ๋ง์ดํธ --volume-driver ์ปจํ ์ด๋์ฉ ์ ํ์ ๋ณผ๋ฅจ ๋๋ผ์ด๋ฒ --volumes-from ์ง์ ๋ ์ปจํ ์ด๋์ ๋ณผ๋ฅจ ๋ง์ดํธ --workdir -w ์ปจํ ์ด๋ ๋ด๋ถ์ ์์ ๋๋ ํฐ๋ฆฌ
์์
# ๋คํธ์ํฌ ์ฐ๊ฒฐ
$ docker network create my-net
$ docker run -itd --network=my-net busybox
๋ฐ์ํ