安裝命令:curl -sSL https://get.docker.com/ | sh
添加當前用戶名到docker組:
If you would like to use Docker as a non-root user, you should now consider
adding your user to the "docker" group with something like:
sudo usermod -aG docker gavinwu
如果docker擁有相關權限,以下所有命令可把sudo去掉
查看docker是否安裝成功:sudo docker info
創建容器:1、# sudo docker run -i -t ubuntu /bin/bash (隨機容器名稱)
2、# sudo docker run --name push-web(容器名) -i -t ubuntu /bin/bash (指定容器名稱,必須唯一,否則創建失敗,-i 標准輸入 -t 交互式shell)
3、# sudo docker run -d -p 8080:80 --name push-web(容器名) -i -t ubuntu /bin/bash (指定容器名稱,必須唯一,否則創建失敗。-p 容器端口:宿主機端口,-d 后台進程)
4、# sudo docker run -d -p 8080:80 --name push-web(容器名) -v 宿主機目錄:容器目錄:ro/rw -i -t ubuntu /bin/bash (指定容器名稱,必須唯一,否則創建失敗。-p 容器端口:宿主機端口 -v宿主機目錄掛載到容器目錄 -d 后台進程 ro容器目錄只讀 rw容器目錄讀寫)
5、# sudo docker run -d --net=app --name push-web(容器名) ubuntu (--net=app 在app網絡下創建容器)
如果成功則進入容器:
檢查容器的接口:# ip a
bash:ip:command not found
解決辦法:# apt-get install iproute2 iproute2-doc (如果執行失敗則:# apt-get update,然后再次執行)
檢查容器的進程:# ps -aux
退出容器:# exit
查看當前宿主機中容器列表:# sudo docker ps -a
停止所有容器:# docker stop $(docker ps -aq)
查看容器的啟動命令:# sudo docker ps -a --no-trunc
進入運行的容器:# sudo docker exec -it 容器ID /bin/sh (進不去則嘗試修改“sh”為“bash”)
刪除容器:# sudo docker rm 容器ID
刪除所有容器:# sudo docker rm `sudo docker ps -a -q`
重啟已經停止的容器:# sudo docker start 容器名稱 / 容器ID
列出docker鏡像:# sudo docker images
拉取docker鏡像:# sudo docker pull ubuntu:12.04 (拉取ubuntu 12.04 版本)
創建一個帶標簽的鏡像:# sudo docker run -i -t --name push-web ubuntu:12.04 /bin/bash
docker hub上查找鏡像:# sudo docker search xxx
登錄docker:# sudo docker login
登出docker:# sudo docker logout
構建提交鏡像:# sudo docker commit 容器ID hub用戶名/倉庫名 (成功后返回鏡像ID)
# sudo docker commit -m "修改 xx bug" -a "wukefang作者信息" 容器ID hub用戶名/倉庫名:標簽
# sudo docker build --no-cache -t="hub用戶名/倉庫名:標簽" Dockerfile文件路徑(也可以是git路徑)
查看提交鏡像的詳細信息:# sudo docker inspect hub用戶名/倉庫名:標簽
查看鏡像構建歷史:# sudo docker history 鏡像ID
查看docker端口映射情況:# sudo docker ps -l
# sudo docker port 鏡像ID/容器名 80(容器端口)
推送docker鏡像:# sudo docker push hub用戶名/倉庫名 hub用戶名/倉庫名 ...
刪除本地docker鏡像:# sudo docker rmi hub用戶名/倉庫名 hub用戶名/倉庫名 ...
刪除本地所有鏡像:# sudo docker rmi `docker images -a -q`
創建docker networking網絡:# sudo docker network create app(網絡名)
將已有容器添加到網絡:# sudo docker network connect app db2(容器名)
從網絡中斷開容器:# sudo docker network disconnect app db2
