文章目录
1. 常用命令
1.1 查看docker版本
docker version
1.2.显示系统信息
docker info
1.3.检索image
docker search image_name
1.4.下载image
docker pull image_name
1.5.docker 镜像列表
docker images
1.6.删除一个或多个镜像
docker rmi image_name/image_id
1.7.显示一个镜像历史
docker history image_name
1.8.保存和加载镜像
#当需要把一台机器上的镜像迁移到另一台机器的时候,需要保存镜像与加载镜像
docker save imgae_name/image_id -o file_path //保存镜像到一个tar包
docker load -i file_path //加载一个tar包格式的镜像
或者
docker save image_name >/home/save.tar
docker load < /home/sace.tar
1.9.docker的启动、停止、重启
service docker restart
service docker stop
service docker start
2. 容器
docker容器可以理解为在沙盒中运行的进程。这个沙盒包含了该进程运行所必需的资源,包括文件系统、系统类库、shell环境等。
但是这个沙盒默认是不会运行任何程序的。你需要在沙盒中运行一个进程来启动某一个容器。这个进程是该容器的唯一进程,所以当该进程结束时,容器也会完全停止。
2.1 启动容器
docker run image_name echo "hello world" //在容器中运行echo命令,输出"hello world"
docker run -it image_name /bin/bash //交互式进入容器
docker run image_name apt-get install -y app_name //在容器中安装新的程序
在执行apt-get命令时,要带上-y参数。如果不指定-y参数的话,apt-get命令会进入交互模式,需要用户输入命令来确认,但在docker环境中是无法响应这种交互的。apt-get命令执行完后,容器就会停止,但对容器的改动不会丢失。
默认情况下,如果没有指定容器名称,系统将会自动随机生成一个唯一的名称。
当然,我们也可以直接来指定容器的名称,此时,使用–name 容器名来实现。
例如:
sudo docker run --name nianshi_test -i -t ubuntu /bin/bash
此时,我们将会创建一个容器名称为nianshi_test的容器。
一个合法的容器名称是只能由字母、数字、下划线、圆点和横线组成的。
2.2.查看容器
docker ps //列出当前所有正在运行的container
docker ps -a //列出所有container
docker ps -l //列出最近一次启动的container
2.3.对容器的操作(rm、stop、start、kill、logs、diff、top、cp、restart、attach)
docker rm `docker ps -a -q` //删除所有的容器
docker rm imgae_name/image_id //删除单个容器
docker stop imgae_name/image_id //停止一个容器
docker start imgae_name/image_id //启动一个容器
docker kill imgae_name/image_id //杀死一个容器
docker restart imgae_name/image_id //重启一个正在运行的容器
docker logs imgae_name/image_id /从容器中取日志
docker top imgae_name/image_id //显示一个运行的容器里面的进程信息
docker diff imgae_name/image_id //列出一个容器里面被改变的文件或目录,list列表会显示三中事件,A增加的,D删除的,C被改变的
docker attach imgae_name/image_id //附加到一个运行的容器上面
2.4.进入容器
docker exec -it 775c7c9ee1e1 /bin/bash
2.5.查看容器详细信息
docker inspect xxxxx