Docker的介绍、安装与常用命令

Docker的介绍、安装与常用命令

  • 一、介绍
    • 1.相关资源
    • 2.安装环境
    • 3.基本组成
  • 二、Docker安装
    • 1.检查系统环境
    • 2 安装gcc
    • 3 卸载旧版本docker
    • 4 安装软件包
    • 5 设置镜像仓库
    • 6 更新yum 索引
    • 7 安装(ce版)
    • 8 启动Docker
    • 9 阿里云镜像加速
    • 10 Docker卸载
  • 三、 常用命令
    • 1 帮助命令
    • 2 镜像命令
      • 2.1 docker images
      • 2.2 docker rmi 镜像名称
    • 3 容器命令
      • 3.1 创建并启动容器
      • 3.2 查看运行的容器
      • 3.3 退出容器命令
      • 3.4 启动容器
      • 3.5 重启容器
      • 3.6 停止容器
      • 3.7 删除容器
    • 4 其他命令
      • 4.1 守护模式容器
      • 4.2 查看运行日志
      • 4.3 查看容器进程
      • 4.4 查看容器细节
      • 4.5 进入正在运行的容器
      • 4.6 文件复制
      • 4.7 查看容器详细信息

一、介绍

Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可抑制的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。容器完全使用沙盒机制,相互之间不会存在任何接口。几乎没有性能开销,可以很容易的在机器和数据中心运行。最重要的是,他们不依赖于任何语言、框架或者包装系统。

1.相关资源

官网:http://www.docker.com
仓库:http://hub.docker.com

2.安装环境

centOS 7 以上(不包含7.0),64位系统,内核3.10以上。

3.基本组成

  • 镜像(image)
  • 容器(container)
  • 仓库(repository)

二、Docker安装

1.检查系统环境

cat /etc/redhat-release

在这里插入图片描述

2 安装gcc

yum -y install gcc gcc-c++

在这里插入图片描述

3 卸载旧版本docker

yum -y remove docker docker-common docker-selinux docker-engine

在这里插入图片描述

4 安装软件包

yum install -y yum-utils device-mapper-persistent-data lvm2

在这里插入图片描述

5 设置镜像仓库

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

6 更新yum 索引

yum makecache fast

7 安装(ce版)

ce是官方提供的免费版本

yum -y install docker-ce

在这里插入图片描述

8 启动Docker

systemctl start docker

9 阿里云镜像加速

默认访问的仓库实在国外所以访问速度是没办法保证的。为了更好的体验,我们可以配置阿里云镜像加速

  • 登录阿里云 -> 进入控制台 -> 产品与服务 -> 容器镜像服务 ->
    在这里插入图片描述
  • 找到镜像工具 -> 镜像加速器 -> 选择操作系统
    在这里插入图片描述
    上图配置命令为:
    1.创建docker文件夹
    2.创建daemon.json文件
    3.写入数据
    4.重新加载配置文件
    5.重启docker
  • 配置命令
    • 1.创建docker文件夹
      sudo mkdir -p /etc/docker
      
    • 2.创建daemon.json文件
      vim /etc/docker/daemon.json
      
    • 3.写入数据 -> Esc -> :wq 保存并退出
      {"registry-mirrors": ["https://j8img1md.mirror.aliyuncs.com"]
      }
      
    • 4.重新加载配置文件
      sudo systemctl daemon-reload
      
    • 5.重启docker
      sudo systemctl restart docker
      

10 Docker卸载

systemctl stop docker
yum -y remov docker-ce
rm -rf /var/lib/docker

三、 常用命令

1 帮助命令

命令说明
docker version查看docker的版本信息
docker info查看docker的详细信息
docker --helpdocker的帮助命令,可以查看到相关的其他命令
  • 查看版本
    docker version
    

2 镜像命令

命令说明
docker images列出本地镜像
docker search 镜像名称从docker hub 上搜索镜像
docker pull 镜像名称从docker hub 上下载镜像
docker rmi 镜像名称删除本地镜像
docker run 镜像名称运行本地镜像(如果本地没有会到远程仓库下载)

2.1 docker images

在这里插入图片描述

命令说明
-a列出本地所有镜像
-q只显示镜像ID
–digests显示镜像摘要
–no-trunc显示完整的镜像信息

在这里插入图片描述

2.2 docker rmi 镜像名称

命令说明
docker rmi -f 镜像名称强制删除镜像
docker rmi -f 镜像名称1 镜像名称2强制删除多个镜像
docker rmi -f $(docker images -qa)删除全部镜像

-f 表示强制删除

3 容器命令

有镜像才能创建容器,下载一个镜像

docker pull centos

在这里插入图片描述

3.1 创建并启动容器

创建并启动过一个容器的命令

docker run [OPRIONS] IMAGE [COMMAND]

OPTIONS常用参数

命令说明
–name"容器新名字”:为容器指定一个名称
-d后台运行容器并返回容器ID,也即启动守护式容器
-i以交互模式运行容器,通常与-t同时使用
-t为容器重新分配一个伪输入终端,通常与-i同时使用
-P:随机端口映射
-p指定端口映射,有以下4中格式:Ip:hostPort:containerPort;Ip::containerPort;hostPort:contalnerPort;contalnerPort

交互式的容器

docker run -it centos /bin/bash

执行命令后会直接进入到容器内
在这里插入图片描述
容器与宿主机对比(上边是宿主机,下边是容器)
在这里插入图片描述

3.2 查看运行的容器

我们要查看当前正在运行的容器有哪些,可以通过ps命令来查看(在宿主机中查看)

docker ps [OPTIONS]

OPTIONS可用参数

命令说明
列出正在运行的容器
-a列出当前所有正在运行的容器 + 历史上运行过的
-l显示最近创建的容器
-n显示最近n个创建的容器
-q静默模式,只显示容器编号
–no-trunc查看所有信息

在这里插入图片描述

3.3 退出容器命令

命令说明
exit容器停止并退出
ctrl+p+q(快捷键)容器不停止,只退出

3.4 启动容器

docker start 容器ID或名称

3.5 重启容器

docker restart 容器ID或名称

3.6 停止容器

docker stop 容器ID或名称

还可以通过强制停止容器

docker kill 容器ID或名称

3.7 删除容器

有时容器使用过完就没有作用了,我们可以删除掉容器,使用rm命令

  • 删除一个容器
    docker rm 容器ID
    
  • 删除多个容器
    docker rm 容器ID 容器ID
    
  • 删除所有容器
    docker rm -f $(docker ps -qa)
    

4 其他命令

4.1 守护模式容器

使用守护模式创建并启动一个容器

docker run -d 容器名称

使用以上命令创建并启动的容器,如果容器内没有程序在执行,会立即停止调,此时使用 docker ps 查看不到刚刚的创建的容器(因为容器已经停止了)

4.2 查看运行日志

docker logs -t -f --tail 3 容器ID

4.3 查看容器进程

在宿主机中使用top查看, 在docker中也是

docker top 容器ID

4.4 查看容器细节

docker inspect 容器ID

4.5 进入正在运行的容器

命令说明
exec在容器中打开新的终端,并且可以启动新的进程
attach直接进入容器启动命令的终端,不会启动新的进程
  • exec 不进入容器,给容器发布命令,如在宿主机中打印容器目录:
docker exec -it 容器ID ls

在这里插入图片描述

  • attach 进入到容器内
docker attach 容器ID 

在这里插入图片描述

4.6 文件复制

我们有有时需要从容器中拷贝数据到宿主机中

docker cp 容器ID:容器内路径 宿主机路径
  • 验证步骤一、在容器中创建一个文件夹,在文件夹内创建一个文本,在文本内写入数据
    在这里插入图片描述
  • 验证步骤二、在宿主机中使用复制命令并查看
    在这里插入图片描述
  • 以上操作是:
    • 在宿主机创建文件夹mzw01,在mzw01中创建a.txt并写入‘hello Docker’
    • 在宿主机中使用复制命令,将容器中mzw01文件夹复制到宿主机mzw02文件夹
    • 查看宿主机mzw02文件夹内容
  • 注意
    复制命令可以复制整个文件夹,也可以复制单个文件

4.7 查看容器详细信息

docker inspect 容器ID

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/474952.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PyTorch-线性回归

已经进入大模微调的时代&#xff0c;但是学习pytorch&#xff0c;对后续学习rasa框架有一定帮助吧。 <!-- 给出一系列的点作为线性回归的数据&#xff0c;使用numpy来存储这些点。 --> x_train np.array([[3.3], [4.4], [5.5], [6.71], [6.93], [4.168],[9.779], [6.1…

使用Erlang/OTP构建容错的软实时Web应用程序

简单介绍 OTP &#xff08;Open Telecom Platform&#xff09; OTP 是包装在Erlang中的一组库程序。OTP构成Erlang的行为机制&#xff08;behaviours&#xff09;&#xff0c;用于编写服务器、有限状态机、事件管理器。不仅如此&#xff0c;OTP的应用行为&#xff08;the appl…

东方博宜 1393. 与7无关的数?

东方博宜 1393. 与7无关的数&#xff1f; 1 遍历1到n里的所有数 2 进行被7整除的判断 3 进行数字中有7的判断 4 符合题意的进行相加 #include<iostream> using namespace std ; int main() {int n ; cin >> n ;int cnt 0 ;for(int i 1 ; i < n ; i){bool m…

基于微信小程序的健身房私教预约系统,附源码

博主介绍&#xff1a;✌程序员徐师兄、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;…

边坡位移监测设备:守护工程安全的前沿科技

随着现代工程建设的飞速发展&#xff0c;边坡位移监测作为预防山体滑坡、泥石流等自然灾害的重要手段&#xff0c;日益受到人们的关注。边坡位移监测设备作为这一领域的关键技术&#xff0c;以其高精度、实时监测的特点&#xff0c;成为守护工程安全的重要武器。 一、边坡位移…

Python算法题集_二叉搜索树中第K小的元素

Python算法题集_二叉搜索树中第K小的元素 题230&#xff1a;二叉搜索树中第K小的元素1. 示例说明2. 题目解析- 题意分解- 优化思路- 测量工具 3. 代码展开1) 标准求解【DFS递归终止检测】2) 改进版一【BFS迭代终止检测】3) 改进版二【BFS迭代终止检测计数定位】4) 改进版三【BF…

海外大带宽服务器连接失败:原因与解决策略

​随着全球互联网的发展&#xff0c;越来越多的企业和个人选择使用海外大带宽服务器来满足数据传输和业务需求。然而&#xff0c;在实际使用中&#xff0c;有时会出现服务器连接失败的问题。本文将为您分析原因并提供相应的解决策略。 一、海外大带宽服务器连接失败的原因 网络…

纯前端低代码平台demo,vue框架,nodejs,简单的pm2纯前端部署实践

文章目录 目录结构说明本地运行项目启动后的页面demo前端部署打包pm2nginx 后话 前段时间开发了一个纯前端的低代码平台demo&#xff0c;vue框架&#xff0c;nodejs&#xff0c;pm2纯前端部署实践。为此记录一下开发过程以及各方面遇到的问题&#xff0c;并作说明。 表单用了若…

javaweb学习day03(JS+DOM)

一、javascript入门 1 官方文档 地址: https://www.w3school.com.cn/js/index.asp离线文档: W3School 离线手册(2017.03.11 版).chm 2 基本说明 JavaScript 能改变 HTML 内容&#xff0c;能改变 HTML 属性&#xff0c;能改变 HTML 样式 (CSS)&#xff0c;能完成 页面的数据…

Python中 ‘==‘ 与‘is‘的区别

嗨喽&#xff0c;大家好呀~这里是爱看美女的茜茜呐 比较判断逻辑是在代码中经常使用的&#xff0c;在Python中常用 ‘’ 和 is 来做比较判断。 : 双等号是用来比较变量所指向内存单元中的值是否相等&#xff0c;它只关心值&#xff0c;并不在意值的内存地址&#xff0c;也就是说…

剖析中青年专家英年早逝现象

剖析中青年专家英年早逝现象 近年来&#xff0c;一个令人痛心的现象频繁触动公众的心弦——不少处于事业巅峰期的中青年专家、教授不幸英年早逝。他们的去世不仅是个人和家庭的悲剧&#xff0c;也是国家和社会的巨大损失。这一现象背后的原因错综复杂&#xff0c;涉及工作压力、…

《辽宁春晚》开场动画惊艳亮相,蓝海创意云渲染服务再显神通

随着2024年甲辰龙年的脚步日益临近&#xff0c;备受瞩目的《辽宁春晚》于除夕夜为全国观众带来了一场精彩绝伦的视听盛宴。作为整场晚会的亮点之一&#xff0c;开场动画以其独特的创意和精美的画面效果&#xff0c;为观众带来了一个难忘的视觉体验。而这一精彩的呈现&#xff0…