Docker基础命令

Docker

一、概述

  • Docker是一个开源的应用容器引擎

  • Docker支持将软件编译成一个镜像,然后在镜像中做好各种软件的配置,将镜像发布出去,其他使用者可以直接使用镜像,而不需要进行配置

  • 运行中的镜像称为Docker容器,容器启动的速度非常快

二、核心概念

  1. 概念
    • docker主机(host):安装了Docker程序的机器(Docker直接安装在操作系统之上)
    • docker客户端(Client):连接docker主机进行操作
    • docker仓库(Registry):用来保存各种打包好的软件镜像
    • docker镜像(Images):软件打包好的镜像;放在docker仓库中
    • docker容器(Container):镜像启动后的实例称为一个容器;容器是独立运行的一个或一组应用
  2. 使用步骤
    • 安装Docker
    • 去Docker仓库中找到这个软件对应的镜像
    • 使用Docker运行这个镜像,这个镜像就会生成一个Docker容器

三、Docker的安装

  • Ubuntu下安装docker

  • 因为apt官方仓库docker版本比较陈旧,所以先卸载可能存在的旧版本

    sudo apt-get remove docker docker-engine docker-ce docker.io
    
  • 更新apt索引

    sudo apt-get update
    
  • 安装以下可以通过HTTPS使用存储库(repository)

    sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common
    
  • 为了确认所下载软件的合法性,需要添加软件源的GPG秘钥

    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
    
  • 安装存储库

    add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu artful stable" 
    
  • 安装最新版的Docker CE

    sudo apt-get install -y docker-ce
    
  • 查看docker服务是否启动

    systemctl status docker
    
  • 使用命令启动

    sudo systemctl start docker
    

四、常用命令

4.1 帮助命令

# 版本
docker version
# 信息描述
docker info
# 帮助命令
docker --help

4.2 镜像命令

# docker上可以运行的镜像模板
docker images
# REPOSITORY:镜像的仓库源  TAG:镜像的标签  IMAGE ID:镜像ID  CREATED:镜像创建时间  SIZE:镜像大小
  • 选项

    -a:列出本地所有镜像

    -q:只显示镜像ID

    –digests:显式镜像的摘要信息

    –no-trunc:显式完整的镜像信息

# 查找某个镜像
docker search  [镜像名]
  • 选项

    –no-trunc:显式完整的摘要信息

# 下载镜像,TAG可省略
docker pull [镜像名:TAG]
# 删除某个镜像
docker rmi [镜像名或ID]
# 可以删除多个镜像,镜像名之间以空格隔开
docker rmi -f 多个镜像名
# 删除所有镜像
docker rmi -f $(docker images -qa)
  • 选项

    -f:强制删除

4.3 容器命令

# 运行一个容器
docker run [OPTIONS] IMAGES [COMMAND] [ARG ...]
  • 选项

    –name:为容器指定一个名称

    -d:后台运行容器,并返回容器ID,即启动守护式容器

    -i:以交互模式运行容器,通常和-t同时使用

    -t:为容器重新分配一个伪终端

    -P:随机端口映射

    -p:指定端口映射:ip:hostPort:containerPort;ip::containerPort;hostPort:containerPort;containerPort

# 列出正在运行的容器
docker ps
  • 选项

    -a:列出当前运行的和已经退出的容器

    -l:列出最近运行过的容器

# 以交互的方式运行容器
docker run -it centos
# 退出容器(容器变为down状态)
exit
# 离开容器(容器依然是Up状态)
ctl+p+q
# 重启容器
docker restart [容器ID]
# 停止容器
docker stop [容器ID]
# 删除容器
docker rm [容器ID]
# 以守护方式启动容器
docker run -d [容器名或ID]
# 查看日志
docker logs -f -t --tail [容器ID]
  • 选项

    -t:加入时间戳

    -f:跟随最新的日志打印

    –tail [数字]:显式最后多少条

# 查看容器内部运行的进程
docker top [容器ID]
# 查看容器的内部细节
docker inspect [容器ID]
# 进入正在运行的容器并且以命令行交互
docker exec [容器ID] [可以跟要执行的命令:例如 ls]
# 文件拷贝
docker cp 容器ID:容器内路径  目的主机路径

五、Docker镜像

5.1 概述

镜像是一种轻量级、可执行的独立软件包,用来打包软件运行环境和基于运行环境开发的软件,它包含运行某个软件所需要的所有内容。Union文件系统是Docker镜像的基础。Union文件系统时一种分层、轻量级并且高性能的文件系统,它支持对文件系统的修改作为一次提交来一层一层的叠加,同时可以将不同的目录挂载到同一个虚拟文件系统的下。

  1. 特性:一次同时加载多个文件系统,但从外面看起来,只能看到一个文件系统,联合加载会把各层文件系统叠加起来,这样最终的
    文件系统会包含所有底层的文件和目录。
  2. 特点:docker镜像都是只读的,当容器启动时,一个新的可写层被加载到镜像顶部。这一层通常称为“容器层”,“容器层”之下的都叫
    “镜像层”。

5.2 镜像commit命令

docker commit:提交容器副本,使之成为一个新的镜像
docker commit -m="提交的描述信息" -a="作者" 容器ID 要创建的目标镜像名:[标签]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ysw!不将就

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值