常用docker命令,及一些坑
常用docker命令,及一些坑
常用命令
-
檢視容器的root使用者密碼
docker logs <容器名orID> 2>&1 | grep '^User: ' | tail -n1
因為docker容器啟動時的root使用者的密碼是隨機分配的。所以,通過這種方式就可以得到redmine容器的root使用者的密碼了。
-
檢視容器日誌
docker logs -f <容器名orID>
-
檢視正在執行的容器
docker ps docker ps -a為檢視所有的容器,包括已經停止的。
-
刪除所有容器
docker rm $(docker ps -a -q)
刪除單個容器
docker rm <容器名orID>
-
停止、啟動、殺死一個容器
docker stop <容器名orID> docker start <容器名orID> docker kill <容器名orID>
-
檢視所有映象
docker images
- 刪除所有映象
docker rmi $(docker images | grep none | awk '{print $3}' | sort -r)
-
執行一個新容器,同時為它命名、埠對映、資料夾對映。以redmine映象為例
docker run --name redmine -p 9003:80 -p 9023:22 -d -v /var/redmine/files:/redmine/files -v /var/redmine/mysql:/var/lib/mysql sameersbn/redmine
-
一個容器連線到另一個容器
docker run -i -t --name sonar -d -link mmysql:db tpires/sonar-server sonar
容器連線到mmysql容器,並將mmysql容器重新命名為db。這樣,sonar容器就可以使用db的相關的環境變數了。
-
拉取映象
docker pull <映象名:tag>
如
docker pull sameersbn/redmine:latest
-
當需要把一臺機器上的映象遷移到另一臺機器的時候,需要儲存映象與載入映象。
機器adocker save busybox-1 > /home/save.tar
使用scp將save.tar拷到機器b上,然後:
docker load < /home/save.tar
-
構建自己的映象
docker build -t <映象名> <Dockerfile路徑>
如Dockerfile在當前路徑:
docker build -t xx/gitlab .
- 重新檢視container的stdout
# 啟動top命令,後臺執行 $ ID=$(sudo docker run -d ubuntu /usr/bin/top -b) # 獲取正在running的container的輸出 $ sudo docker attach $ID top - 02:05:52 up 3:05, 0 users, load average: 0.01, 0.02, 0.05 Tasks: 1 total, 1 running, 0 sleeping, 0 stopped, 0 zombie Cpu(s): 0.1%us, 0.2%sy, 0.0%ni, 99.7%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 373572k total, 355560k used, 18012k free, 27872k buffers Swap: 786428k total, 0k used, 786428k free, 221740k cached ^C$ $ sudo docker stop $ID
-
後臺執行(-d)、並暴露埠(-p)
docker run -d -p 127.0.0.1:33301:22 centos6-ssh
-
從container中拷貝檔案出來
sudo docker cp 7bb0e258aefe:/etc/debian_version .
拷貝7bb0e258aefe中的/etc/debian_version到當前目錄下。
注意
:只要7bb0e258aefe沒有被刪除,檔案名稱空間就還在,可以放心的把exit狀態的container的檔案拷貝出來
坑
-
ubuntu14下的docker是沒有service服務。去除每次sudo執行docker命令,需要新增組:
# Add the docker group if it doesn't already exist. $ sudo groupadd docker #改完後需要重新登陸使用者 $ sudo gpasswd -a ${USER} docker
-
ubuntu14的febootstrap沒有-i命令
- Dockerfile中的EXPOSE、docker run --expose、docker run -p之間的區別
Dockerfile的EXPOSE相當於docker run --expose,提供container之間的埠訪問。docker run -p允許container外部主機訪問container的埠
相關文章
- 常用docker命令Docker
- Docker(2):快速入門及常用命令Docker
- docker一些命令Docker
- 常用的docker命令Docker
- Docker常用的命令Docker
- Docker常用操作命令Docker
- Docker基礎修煉3--Docker容器及常用命令Docker
- docker-compose常用命令及使用詳情Docker
- Docker(三)Docker常用命令Docker
- 常用環境Docker命令Docker
- docker常用命令Docker
- Docker 常用命令Docker
- docker、docker-compose 常用命令Docker
- Git常用命令總結及一些問題思考Git
- docker常用命令 命令解釋 docker基礎理解Docker
- Docker--常用命令Docker
- Docker常用命令整理Docker
- Docker Swarm常用命令DockerSwarm
- Docker常用命令指南Docker
- 常用的 Docker 容器管理命令Docker
- Docker的常用命令Docker
- 【Docker入門】Docker的常用命令Docker
- Docker 最常用的映象命令和容器命令Docker
- 【Docker】5. 常用命令—映象命令Docker
- Docker命令的一些記錄Docker
- Docker之常用命令(二)Docker
- Linux的docker常用命令LinuxDocker
- Docker 常用命令總結Docker
- Docker初探之常用命令Docker
- Linux和Docker常用命令LinuxDocker
- docker 常用命令記錄Docker
- docker常用命令總結Docker
- Docker常用命令小記Docker
- docker常用命令的使用Docker
- 【Docker 系列】docker 學習 二,Docker 的常用命令Docker
- [Docker 系列]docker 學習 二,Docker 的常用命令Docker
- docker釋出專案的一些坑Docker
- composer更新命令及常用命令
- composer 更新命令及常用命令