docker 基本指令的使用

本文介绍了Docker的核心概念,包括其作为C/S架构的客户端-服务器程序,主要组成部分如镜像(包含完整Linux系统)和仓库。详细讲解了镜像的常用操作,如查看、拉取、保存和删除,以及容器的常用指令,如查看、运行、停止和删除。还提到了权限问题的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

docker 简介

开源、轻量级、可打包、发布、运行任何的应用,是一个C/S 客户端-服务端的程序

客户端向服务端发送请求,服务端处理完成请求后返回结果

组成部分

  • 镜像:如一个独立的文件系统,包含所需的数据,来创建容器,如:一个镜像包含一个完整的liunx 系统
  • 容器:是由镜像创建的运行实例,支持启动、停止、删除等操作,各个容器相互隔离互不影响
  • 仓库:托管镜像的仓库,如:svn,github

镜像的常用指令

  • docker  image  ls                                                             查看镜像列表
  • docker pull   镜像名称                                                     拉取镜像资源
  • docker save -o  文件名+镜像名称                                   保存或导出镜像
  • docker image rm 镜像名称:版本时间                              删除镜像

root@pass:/home/pass# sudo docker image ls     查看当前镜像列表
REPOSITORY                  TAG       IMAGE ID       CREATED       SIZE
daocloud.io/library/redis   latest    a617c1c92774   2 years ago   105MB

使用pull命令时,发现拉取镜像很慢 修改/etc/docker/daemon.json 文件无效,按下列格式:

docker pull daocloud.io/library/redis:latest   拉取镜像资源

root@pass:/home/pass/Desktop# docker save -o redis.rar daocloud.io/library/redis 保存镜像
root@pass:/home/pass/Desktop# ls
redis.rar

root@pass:/home/pass/Desktop# docker image rm daocloud.io/library/redis:latest  删除镜像
Untagged: daocloud.io/library/redis:latest
Untagged: daocloud.io/library/sha256:7ef8701c2d3b0a4cfc39543a445c6f2c3ca002f79b2060c7eaa8f3f0043c1899
Deleted: sha256:93ffed796afa4e59fe3387114f5be8ce626afa7ccf6c3eaa84ae44aed863e3f4
Deleted:sha256:14a1ca976738392ffa2ae4e54934ba28ab9cb756e924ad9297a4795a4adbfdf6

root@pass:/home/pass/Desktop# sudo docker image ls
REPOSITORY   TAG       IMAGE ID   CREATED   SIZE

root@pass:/home/pass/Desktop# docker load -i '/home/pass/Desktop/redis.rar'  加载镜像资源
14a1ca976738: Loading layer
Loaded image: daocloud.io/library/redis:latest
root@pass:/home/pass/Desktop# sudo docker image ls
REPOSITORY                  TAG       IMAGE ID       CREATED       SIZE
daocloud.io/library/redis   latest    a617c1c92774   2 years ago   105MB

容器的常用指令

  • docker container ls -all                          查看所有容器
  • docker run -it 镜像名称                         运行指定容器
    • 参数 -i 交互式   -t  伪终端   -d    后台运行
  • docker container stop [id 或名称]         停止指定容器
  • docker exec -it [id 或名称] /bin/bash    进入指定容器
  • docker container rm [id 或名称]            删除指定容器

root@pass:/home/pass# docker container ls -all  查看所有容器
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES

root@pass:/home/pass# docker image ls -a        查看所有镜像
REPOSITORY                  TAG       IMAGE ID       CREATED       SIZE
daocloud.io/library/redis   latest    a617c1c92774   3 years ago   105MB

root@pass:/home/pass# docker run -it daocloud.io/library/redis  运行指定容器
1:M 12 Mar 2024 13:27:19.853 * Increased maximum number of open files to 10032
1:M 12 Mar 2024 13:27:19.853 * monotonic clock: POSIX clock_gettime
                _._
           _.-``__ ''-._
      _.-``    `.  `_.  ''-._           Redis 6.2.1 (00000000/0) 64 bit
  .-`` .-```.  ```\/    _.,_ ''-._

root@pass:/home/pass# docker exec -it 1696dc532c41 /bin/bash    进入指定容器
root@1696dc532c41:/data# ls

root@pass:/home/pass# docker container stop 1696dc532c41  停止容器

注意出现下面权限异常的情况可输入sudo aa-remove-unknown命令解决:

Error response from daemon: cannot stop container: 1696dc532c41: permission denied

root@pass:/home/pass# docker container start 1696dc532c41
1696dc532c41

root@pass:/home/pass# docker container rm d0080516c623
d0080516c623

关于docker 更多内容请关注:Git && Docker 学习笔记-优快云博客

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值