Difference between revisions of "Docker"
From Teknologisk videncenter
m |
m |
||
| (13 intermediate revisions by the same user not shown) | |||
| Line 14: | Line 14: | ||
|- | |- | ||
|docker run -d -p 8080:80 nginx || Run image nginx detach (portmap redirect 8080->80) public to private - See rule with '''iptables -L -t nat -n''' or '''nft list ruleset''' | |docker run -d -p 8080:80 nginx || Run image nginx detach (portmap redirect 8080->80) public to private - See rule with '''iptables -L -t nat -n''' or '''nft list ruleset''' | ||
| + | |- | ||
| + | |docker run -d -p 8080:80 -v /home/heth/nginx:/usr/share/nginx/html nginx || Same as above but with volume map. Actually mounts directory in container | ||
|- | |- | ||
|docker run -it ubuntu|| Run image ubuntu in container ( -it = interactive tty ) | |docker run -it ubuntu|| Run image ubuntu in container ( -it = interactive tty ) | ||
| Line 19: | Line 21: | ||
|docker pull nginx || pull container from repository (default docker hub) | |docker pull nginx || pull container from repository (default docker hub) | ||
|- | |- | ||
| + | |docker inspect 1e5bdae517e7 || JSON dump of container config | ||
| + | |- | ||
| + | |docker container prune || Remove all stopped containers | ||
| + | |- | ||
| + | |docker exec -ti 1e5bdae517e7 bash || Run interactive bash in running container | ||
| + | |- | ||
| + | |docker attach 1e || attach your terminal's standard input, output, and error to a running container | ||
| + | |- | ||
| + | |docker image ls || List images | ||
| + | |- | ||
|} | |} | ||
| + | == Container preservation == | ||
| + | <source lang=bash> | ||
| + | root@ub1:~# docker run -it --name heth alpine | ||
| + | / # echo "Hello, alpine" > hethfile.txt | ||
| + | / #<CTRL-D> | ||
| + | root@ub1:~# docker start -ai heth | ||
| + | / # cat hethfile.txt | ||
| + | Hello, alpine | ||
| + | / #<CTRL-D> | ||
| + | root@ub1:~# docker rm heth | ||
| + | </source> | ||
| + | ==Running command in container== | ||
| + | <source lang=bash> | ||
| + | # echo "print("Hello, world")" > /tmp/hello.py | ||
| + | # docker run -it -v /tmp:/app python python3 /app/hello.py | ||
| + | Hello,world | ||
| + | </source> | ||
| + | =Docker engine= | ||
| + | ==Directories== | ||
| + | ;/var/lib/docker | ||
| + | : Base directory | ||
| + | |||
Latest revision as of 06:19, 8 March 2025
| command | Explanation |
|---|---|
| docker ps | Status of running containers |
| docker container ls | Status of running containers (As above) |
| docker run ubuntu | Run image ubuntu in containe (Terminates as its bash exits) - pull container if not present |
| docker run -d nginx | Run image nginx detach (as daemon stdin/stdout detached) |
| docker run -d -p 8080:80 nginx | Run image nginx detach (portmap redirect 8080->80) public to private - See rule with iptables -L -t nat -n or nft list ruleset |
| docker run -d -p 8080:80 -v /home/heth/nginx:/usr/share/nginx/html nginx | Same as above but with volume map. Actually mounts directory in container |
| docker run -it ubuntu | Run image ubuntu in container ( -it = interactive tty ) |
| docker pull nginx | pull container from repository (default docker hub) |
| docker inspect 1e5bdae517e7 | JSON dump of container config |
| docker container prune | Remove all stopped containers |
| docker exec -ti 1e5bdae517e7 bash | Run interactive bash in running container |
| docker attach 1e | attach your terminal's standard input, output, and error to a running container |
| docker image ls | List images |
Container preservation
root@ub1:~# docker run -it --name heth alpine
/ # echo "Hello, alpine" > hethfile.txt
/ #<CTRL-D>
root@ub1:~# docker start -ai heth
/ # cat hethfile.txt
Hello, alpine
/ #<CTRL-D>
root@ub1:~# docker rm heth
Running command in container
# echo "print("Hello, world")" > /tmp/hello.py
# docker run -it -v /tmp:/app python python3 /app/hello.py
Hello,world
Docker engine
Directories
- /var/lib/docker
- Base directory