docker 入门学习笔记

docker 入门

下载地址
docker 官网  地址 http://www.docker.com
Docker Hub 官网 https://hub.docker.com/
安装步骤
  • 查看自己 版本 (必须是centOs7以上的版本)
    • cat /etc/redhat-release
  • yum 安装gcc相关
    • yum -y install gcc
    • yum -y install gcc-c++
    • gcc 简介
      • 由GNU推出的一款强大的,性能优越的多平台编译器
      • 想了解更多可以百度
  • 安装需要的软件包(官网要求)
    • yum install -y yum-utils
    • 这里解释一下,如果你不加-y 他就会问你要不要安装,加了就直接安装了
  • 设置stable镜像仓库
    • yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    • 这里我们设置阿里云的,如果设置了官网的,会很慢,也会经常报错
  • 更新yum 软件包索引
    • yum makecache fast
    • 如果你的centOs是8或以上版本去掉 fast 就行了,因为8版本不支持
  • 安装DOCKER CE(官网要求)
    • yum -y install docker-ce docker-ce-cli containerd.io
  • 启动Docker
    • systemctl start docker
  • 测试
    • docker version
    • docker run hello-world
  • 卸载
    -systemctl stop docker
    • yum remove docker-ce docker-ce-cli containerd.io
    • rm -rf /var/lib/docker
    • rm -rf /var/lib/containerd
阿里云镜像加速
  • 先说下镜像加速是什么
    • https://promotion.aliyun.com/ntms/act/kubernetes.html
    • 注册一个属于自己的阿里云账户(可使用淘宝账号,支付宝账号)
  • 获得加速地址链接
    • 登录阿里云开发者平台
      -点击控制台
    • 选择容器镜像服务
    • 获取加速地址
  • 然后直接安装命令执行
    在这里插入图片描述

docker 入门学习笔记_第1张图片

docker 常用命令

  • 帮助启动类命令
    • 启动docker systemctl start docker
    • 停止docker systemctl stop docker
    • 重启docker systemctl restart docker
    • 查看docker状态 systemctl status docker
    • 开机启动 systemctl enable docker
    • 查看docker摘要信息 docker info
    • 查看docker 帮助文档 docker --help
  • 镜像命令
    • docker images
      • 列出本地主机上的镜像
      • OPTIONS
        • -a 列出本地所有的镜像
        • -q 只显示镜像ID
    • docker search 某个镜像的名字,比如redis
      • 例如 docker search redis
      • 还可以这么写 docker search --limit 5 redis
    • docker pull 某个镜像的名字
      • 下载镜像
      • docker pull 镜像名字
        • 没有tag就是最新版
        • 等价于 docker pull 镜像名字:latest
        • docker pull ubuntu
    • docker system df
      • 查看镜像容器所占的资源
    • docker rmi 某个镜像的名字
      • 删除镜像
        • docker rmi of 镜像id 镜像名字都是可以的
        • docker rmi -f $(docker images -qa)
面试题(谈谈docker虚悬镜像是什么?)
仓库名、标签都是的镜像,俗称虚悬镜像dangling image.
  • 容器命令
    • 有镜像才能创建容器 (关键点没有容器你什么都创建不上)
      • docker pull centos
      • docker pull ubuntu
    • 新建+启动容器
      • docker run -it (容器名) bash (启动交互式容器)
      • 列出当前所有正在运行的容器 docker ps (-a 列出当前所有正在运行的容器 + 历史上运行的)
      • -l 显示最近创建的容器
      • -n 显示最近N个创建的容器。
      • -q 静默模式,只显示容器编号
    • 退出容器
      • 两种退出方式
        • exit run 进去的容器,exit 退出,容器停止
        • CTRL+p+q run 进去的容器 CTRL+p+q 退出,容器不停止
    • 启动已停止的运行容器
      • docker start 容器ID和容器名
      • docker restart 同上
      • docker stop  同上
      • docker kill 同上
      • docker rm 删除已停止的容器
    • 启动守护式容器(后台服务器)
      • 在大部分情况下,我们希望docker服务是在后台运行的,我们可以通过-d 指定容器的后台运行模式。
      • docker run -d 容器名
      • redis 启动实列
        • 前台交互式启动
          • docker run -it redis:6.0.8 (前台交互式)
          • docker run -d redis:6.0.8 (后台守护式启动)
    • 查看容器日志
      • docker logs 容器ID
    • 查看容器内运行的进程
      -docker top 容器ID
    • 查看容器内部细节
      -docker inspect 容器ID
    • 进入正在运行的容器并以命令行交互
      • docker exec -it 容器id
      • 重新进入 docker attach
    • 上述两个的区别
      • attach 直接进入容器启动命令终端,不会启动新的进程,用exit退出,会导致容器停止
      • exec 是在容器打开新的终端,并且可以启动新的进程,用exit退出,不会导致容器停止
    • 建议使用 exec
    • 从容器内拷贝文件到主机上
      • 容器->主机
      • docker cp 容器ID:容器内路径 目的主机路径
    • 导入和导出容器
      • export 导出容器的内容留作为一个tar归档文件{对应import命令}
      • import 从 tar包中的内容创建一个新的文件系统在导入为镜像【对应的export】
    • 案例
      • docker export 容器ID > 文件名.tar
      • cat 文件名.tar | docker import - 镜像用户/镜像名:镜像版本号

你可能感兴趣的:(docker,docker)