您的位置:首页 > 运维架构 > Docker

【转】Docker 常用命令

2016-07-16 23:29 555 查看
转载: http://blog.csdn.net/zhang__jiayu/article/details/42611469

docker images:列出本地所有镜像

docker search <IMAGE_ID/NAME>:查找image
docker pull <IMAGE_ID>:下载image
docker push <IMAGE_ID>:上传image

docker rmi <IMAGE_ID>:删除image

容器管理

docker run-i -t <IMAGE_ID> /bin/bash:-i:标准输入给容器 -t:分配一个虚拟终端 /bin/bash:执行bash脚本



-d:以守护进程方式运行(后台)




-P:默认匹配docker容器的5000端口号到宿主机的
-p <HOT_PORT>:<CONTAINER_PORT>:指定端口号
- -name: 指定容器的名称
- -rm:退出时删除容器

docker stop <CONTAINER_ID>:停止container
docker start <CONTAINER_ID>:重新启动container



docker ps - Lists containers.





-l:显示最后启动的容器





-a:同时显示停止的容器,默认只显示启动状态





docker attach <CONTAINER_ID> 连接到启动的容器
docker logs <CONTAINER_ID> : 输出容器日志
docker cp <CONTAINER_ID>:path hostpath:复制容器内的文件到宿主机目录上



<CONTAINER_ID>

docker wait <CONTAINER_ID>:阻塞对容器的其他调用方法,直到容器停止后退出



docker top <CONTAINER_ID>:查看容器中运行的进程


<CONTAINER_ID>:查看容器中的变化


<CONTAINER_ID>:查看容器详细信息(输出为Json)



-f:查找特定信息,如-'{{
.NetworkSettings.IPAddress }}'


docker extc -it <CONTAINER> <COMMAND>:在容器里执行命令,并输出结果

网络管理

docker run-P:随机分配端口号
docker run-p 5000:5000:绑定特定端口号(主机的所有网络接口的5000端口均绑定容器的5000端口)
docker run-p 127.0.0.1:5000:5000:绑定主机的特定接口的端口号
docker run-d -p 127.0.0.1:5000:5000/udp
training/webapp python app.py:绑定udp端口号
docker port<CONTAINER_ID> 5000:查看容器的5000端口对应本地机器的IP和端口号


使用Docker Linking连接容器:




docker run-d -P --name <CONTAINER_NAME> --link <CONTAINER_NAME_TO_LINK>:<ALIAS>



docker run-d -P --name web -v /webapp training/webapp python app.py





也可以将容器卷挂载到宿主机目录或宿主机的文件上,<容器目录或文件>的内容会被替换为<宿主机目录或文件>的内容,默认容器对这个目录有可读写权限



docker run-d -P --name web -v <宿主机目录>:<容器目录> training/webapp python app.py

可以通过指定ro,将权限改为只读

-----:<容器目录>:r trainingwebapp python apppy

docker run-d -v /dbdata --name db1 training/postgres echo Data-only container for postgres

首先启动了一个容器,并为这个容器增加一个数据卷/dbdata,然后启动另一个容器,共享这个数据卷

docker run
-d --volumes-from db1 --name db2 training/postgres
[/code]
此时db2使用了db1的容器卷,当容器db1被删除时,容器卷也不会被删除,只有所有容器不再使用此容器卷时,才会被删除

docker rm -v:删除容器卷


除了共享数据外,容器卷另一个作用是用来备份、恢复和迁移数据


docker run--volumes-from db1 -v /home/backup:/backup ubuntu tar cvf /backup/backup.tar /dbdata

启动一个容器数据卷使用db1容器的数据卷,同时新建立一个数据卷指向宿主机目录/home/backup,将/dbdata目录的数据压缩为/backup/backup.tar

docker run-v /dbdata --name dbdata2 ubuntu /bin/bash

docker run--volumes-from dbdata2 -v /home/backup:/backup busybox tar xvf /backup/backup.tar

启动一个容器,同时把backup.tar的内容解压到容器的backup


仓库管理

docker login:登录

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: