创立

# --name 指定容器名称# -d 指定容器当前台服务模式运行# -p 指定端口映射docker run --name web_server -d -p 80:80 nginx# 基于镜像创立一个centos容器,并和容器进行交互docker run -it centos

进行

docker stop $container_id

删除

如果没有应用 -v 选项,并不会删除 volumes 数据docker rm $container_id# 删除所有已退出的镜像docker ps -a | grep "Exited" | awk '{print $1 }' | xargs docker stopdocker ps -a | grep "Exited" | awk '{print $1 }' | xargs docker rm

查看

# 查看正在运行的容器docker container ls # 查看所有容器docker container ls -adocker ps -a# 查看容器的状态信息docker inspect $container_id

交互

创立一个交互shelldocker exec -it $container_id /bin/bash不创立交互shell,间接执行命令docker exec -it $container_id ip a

日志

# 特定容器的日志内容docker logs --tail 100 $container_id# 查看所有容器的日志列表find /var/lib/docker/containers/ -type f -name "*.log" -exec du -sh {} \;# 清空所有容器的日志内容find /var/lib/docker/containers/ -type f -name "*.log" -exec truncate -s 0 {} \;# 清空所有容器的日志内容【如下命令不行,不分明是不是echo前面跟箭头导致的】find /var/lib/docker/containers/ -type f -name "*.log" -exec echo > {} \;

导出

docker export 与 save 的区别:

https://tuhrig.de/difference-...
  • docker export 导出的是容器,docker save 导出的是镜像
  • docker export 不蕴含构建历史和元数据,体积更小
docker export $container_id > /home/export.tar