一、Docker概述
docker可以干嘛
通俗点讲,docker可以解决”我电脑上可以运行“这个问题。
docker可以解决不同开发过程中的环境问题,例如如果开发测试生成使用的centos版本不一致,可能导致程序可以跑不同。使用docker后,开发可以把自己开发的环境打包成一个镜像,供其他人使用。
docker常用网址
菜鸟教程,上面有基本的命令,还有常用镜像的安装步骤。
docker镜像仓库,里面可以搜索镜像详细信息
二、Docker基本命令
查看docker信息命令
docker version
查看docker相关的版本信息
docker info
查看docker相关详细信息
docker --help
帮助命令
docker服务命令
systemctl start docker
启动docker 服务
systemctl enable docker
docker 服务开机自启动
镜像命令
docker images
查看本地镜像
- -a 列出本地所有镜像
- -q 只显示镜像ID
- –digests 显示镜像摘要信息
- –no-trunc 显示完整的镜像信息
docker search 镜像名
搜索某一个镜像
docker pull 镜像名
拉取某一个镜像
docker rmi 镜像名:版本
删除某一个镜像
docker rmi -f $(镜像名:版本、镜像名:版本)
删除多个镜像
容器命令
docker run [options] [镜像名] [COMMAND] [ARG] 这个命令用于使用镜像创建一个新的容器并运行。容器关闭或者停止后还是存在的,可以使用ocker start 重新启动。
options:
- –name=“” 为容器指定一个新的名字
- -d 后台运行容器,并返回容器ID
- -i docker 要在容器上打开一个标准的输入接口,和-t连用
- -t 指示 docker 要创建一个伪 tty 终端,和-i连用
- P 本机端口:docker端口 端口映射
- -p 随机端口映射
- -v /宿主机绝对路径:/容器内目录 创建共享文件夹,也就是容器数据卷。
- –volumes-from 镜像名1 创建和镜像名1 的容器数据卷,并能共享数据
- –rm 容器退出时会自动删除容器,但是主机的容器卷容器不会删除
docker ps 显示当前正在运行的容器
- -l 显示上一个执行的容器
- -a 显示所有运行过的容器
- -n 数字 显示上几个运行过的容器
- -q 只显示搜索出的容器id
docker start 容器ID 启动一个容器
docker restart 容器ID 重新启动一个容器
docker stop 容器ID 停止一个容器
docker kill 容器ID 强制停止一个容器
docker rm 容器ID 删除一个已停止的容器
docker rm -f 容器ID 强制删除一个未停止的容器
退出容器
这两种退出方式是在和docker容器处于交互状态时的退出命令
exit
容器停止退出
ctrl+p+q
容器不停止退出
容器部分功能命令
docker logs -f -t --tail 容器id;
查看容器日志,-t是时间戳,-f是跟随最新日志打印,-tail是显示最后多少条。
docker inspect 容器id
查看容器内部细节
docker cp 容器id:容器内路径 目前主机的路径
复制容器内文件到主机
进入容器交互命令
docker attach 容器id
开启和容器交互界面,但是输入exit会导致容器停止
docker exec -it 容器id
开启和容器交互界面,但是输入exit不会导致容器停止
容器上传
docker commit -a 作者 -m "提交的描述信息" 容器ID 要创建的目标镜像名:标签版本
将一个容器上传到本地镜像中