docker images 查看镜像 docker image ls 也可以
#docker ps 查看在线的容器
#docker ps -a 查看当前运行的容器+历史上运行的容器
#docker ps -l 查看最近创建的容器
#docker ps -q 静默模式,只显示容器编号
#docker start 容器名字或者id 打开容器
#docker restart 容器名字 重启容器 docker stop 容器名字 关闭容器
#docker kill 容器ID或者容器名 强制删除容器 #docker rm -f 也可以强制删除容器 #docker rm -f $ (docker ps -a -q) 删除全部的容器
#docker system df 查看镜像/容器/数据卷所占的空间
#docker pull 从镜像仓库下载镜像
#docker push 上传到镜像仓库
#docker logs 容器id 查看容器日志
#docker inspect 容器id 查看容器内部细节
#docker top 容器 id 查看容器内运行的进程
删除镜像
创建容器
举例 #docker run -itd —name 容器名字 镜像 bin/bash
—name=”容器名字” 为容器指定一个名字
-d:后台运行容器并返回容器id,也即启动守护式容器(后台运行)
-i:以交互模式运行容器,通常与-t 同时使用:交互式操作
-t:为容器重新分配一个伪输入终端,通常与-i 同时使用:终端
也即启动交换式容器(前台有伪终端,等待交互):
bin/bash:放在镜像名后的是命令,这里我们希望有个交互式Shell,所以用bin/bash.
要退出终端的话 直接输入exit ctrl+p+q 快捷键也可以退出
进入容器
进入一个容器举例 #docker exec -it 容器名字或者id /bin/bash (exec 退出后 不会导致容器停止)
重新进入容器内# docker attach 容器名字 或id (用这个命令也进入容器但是退出容器后,容器会停止需要重启容器 不推荐使用)
-P:随机端口映射,大写P
-p:指定端口映射,小写p
| -p hostPort:containerProt | 端口映射-p 8080:80 |
|---|---|
| -p ip:hostPort:containerProt | 配置监听端口地址-p 10.0.0.100:8080:80 |
| -p ip ::containerProt | 随机分配端口-p 10.0.0.100::80 |
| -p hostPort:containerProt:udp | 指定协议 -p 8080:80:tcp |
| -p 81:80 -p 443:443 | 指定多个 |
容器内的文件保存到主机上
导出导入容器
导出:docker export 容器id > 文件名.tar
export导出容器的内容留作为一个tar归档文件 (对应import命令)
举例: docker export 8c5d6bcc041e > abcd.tar
导入:cat 文件名.tar | docker import -镜像用户/镜像名:镜像版本号
举例:cat abcd.tar | docker import - atcd/ubuntu:15.22
导入 import 从tar包中的内容创建一个新的文件系统再导入为镜像(对应export)
为什么要用导入导出呢
导入导出后相当于打包备份,可以快速恢复到原先容器内的文件 ,完成了数据的迁移和备份的完整一致性要求。
