
好久不打開docker運行環境,執行命令出現下面的情況
bgddeMBP:~ bgd$ sudo docker info Cannot connect to the Docker daemon. Is the docker daemon running on this host?
解決辦法見 http://stackoverflow.com/questions/21871479/docker-cant-connect-to-docker-daemon
簡單地說,在Mac上遇到這個問題,需要執行
eval "$(docker-machine env default)"
再運行 docker info就可以了。
下面是docker學習流水賬:
docker run -i -t ubuntu /bin/bash #-i保證容器stdin開啟,-t為容器分配一個偽tty終端。這樣容器才能提供一個交互式shell hostname #查看容器的主機名 cat /etc/hosts #查看hosts文件 ps -aux #查看容器中的進程 apt-get update & apt-get install vim #一樣可以在容器里安裝程序 exit #退出容器
docker ps #查看運行中的docker容器,-l 最后一次運行的容器 docker run -i -t --name=容器名稱 ubuntu /bin/bash #默認隨機名稱,--name起名 docker start 容器名稱或者容器ID docker attach 容器名稱或者容器ID #附着到正在運行的容器上 docker run --name=容器名稱 -d ubuntu /bin/sh -c "while true;do echo hello;sleep 1;done" #創建可以長期運行的守護式容器 docker logs 容器名稱 #獲取容器日志 -f 可以獲取到最后幾行,-t 可以顯示時間戳
docker top 容器名稱 #查看容器內部的進程 docker exec -d 容器名稱 touch /etc/new_config_file #在容器內執行命令 docker exec -t -i 容器名稱 /bin/bash #打開容器的shell
docker stop 容器名稱 #停止一個容器
docker run --restart =always --name 容器名稱 -d ubuntu /bin/bash -c "while true;do echo hello;sleep 1;done" #創建一個能夠自動重啟的容器,always 可以替換為on-failure,可以指定次數如:on-failure:5
docker inspect 容器名稱或者ID #獲取更多的容器信息
docker inspect --format='{{.State.Running}}' 容器名稱 #選定查看結果
docker rm 容器名稱或者ID #刪除一個容器
docker ps -a #列出所有容器
docker ps -a -q #列出所有的
docker rm `ps -a -q` #刪除所有的容器
