Docker

From Teknologisk videncenter
Jump to: navigation, search


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

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