Docker-安装(Linux,Windows)

目录

  • 前言
  • 安装版本
  • Docker版本说明
  • 前提条件
  • Linux安装
    • 使用YUM源部署
      • 获取阿里云开源镜像站YUM源文件
      • 安装Docker-ce
      • 配置Docker Daemon启动文件
      • 启动Docker服务并查看已安装版本
    • 使用二进制文件部署
  • Windows安装
    • 实现原理
    • 安装步骤
    • 基本使用
  • 参考说明

前言

本文主要说明Docker及其相关组件,在Linux和Windows上的安装步骤。

安装版本

  • Docker版本为:24.0.5 Docker社区版
  • Linux版本:CentOS 7.9
  • 虚拟机版本:VMware Workstation 16
  • Windows版本:Windows11 2022H2

Docker版本说明

  • Docker-ce Docker社区版,主要用于个人开发者测试使用,免费版本
  • Docker-ee Docker企业版,主要用于为企业开发及应用部署使用,收费版本,免费试用一个月,2020年因国际政治原因曾一度限制中国企业使用。

前提条件

  • 在Vmware虚拟机中已安装好CentOS 7.9。且虚拟机可以通过ssh访问。
  • 登录linux后,执行firewall-cmd --state确认防火墙已关闭。
  • 执行iptables -nL,继续确认网络。
  • 执行sestatus确保selinux为disable状态

Linux安装

使用YUM源部署

YUM源可以使用官方YUM源、清华大学开源镜像站配置YUM源,也可以使用阿里云开源镜像站提供的YUM源,建议选择使用阿里云开源镜像站提供的YUM源,原因速度快。

获取阿里云开源镜像站YUM源文件

可以直接访问这个网址:https://developer.aliyun.com/mirror/docker-ce?spm=a2c6h.13651102.0.0.4c9b1b119z027O,如果网址失效,可以在百度上搜索关键字:“阿里云开源镜像站”。

在打开的网站上找到如下图中的地址
在这里插入图片描述

在Linux中执行如下命令:

在docker host上使用 wget下载到/etc/yum.repos.d目录中即可。
# wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo以下是执行结果:
--2023-08-29 23:13:40--  https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
正在解析主机 mirrors.aliyun.com (mirrors.aliyun.com)... 27.128.223.241, 221.230.245.103, 120.39.195.185, ...
正在连接 mirrors.aliyun.com (mirrors.aliyun.com)|27.128.223.241|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:2081 (2.0K) [application/octet-stream]
正在保存至: “/etc/yum.repos.d/docker-ce.repo”100%[===========================================================================================================================>] 2,081       --.-K/s 用时 0s      2023-08-29 23:13:40 (1000 MB/s) - 已保存 “/etc/yum.repos.d/docker-ce.repo” [2081/2081])查看当前主机yum源
[root@~]# yum repolist

执行命令yum repolist,如果看到关键字docker-ce-stable,代表可用。
在这里插入图片描述

安装Docker-ce

在docker host上安装即可,本次使用YUM源中稳定版本,由于版本在不断更新,不同的时间安装版本也不相同,使用方法基本一致。

直接安装docker-ce,此为docker daemon,所有依赖将被yum自动安装,含docker client等。
# yum -y install docker-ce

在这里插入图片描述

配置Docker Daemon启动文件

由于Docker使用过程中会对Centos操作系统中的Iptables防火墙中的FORWARD链默认规划产生影响及需要让Docker Daemon接受用户自定义的daemon.json文件,需要要按使用者要求的方式修改。

# vi /usr/lib/systemd/system/docker.service

具体操作见下图,删除这个部分:” -H fd:// --containerd=/run/containerd/containerd.sock“

新增这个部分:”ExecStartPost=/sbin/iptables -P FORWARD ACCEPT”
在这里插入图片描述

启动Docker服务并查看已安装版本

重启加载daemon文件(也可以直接执行下面的命令,报错在执行这个)
# systemctl daemon-reload启动docker daemon
# systemctl start docker设置开机自启动
# systemctl enable docker
使用docker version客户端命令查看已安装docker软件版本
# docker version
Client: Docker Engine - Community 客户端Version:           20.10.12API version:       1.41Go version:        go1.16.12Git commit:        e91ed57Built:             Mon Dec 13 11:45:41 2021OS/Arch:           linux/amd64Context:           defaultExperimental:      trueServer: Docker Engine - Community Docker管理引擎Engine:Version:          20.10.12API version:      1.41 (minimum version 1.12)Go version:       go1.16.12Git commit:       459d0dfBuilt:            Mon Dec 13 11:44:05 2021OS/Arch:          linux/amd64Experimental:     falsecontainerd:Version:          1.4.12GitCommit:        7b11cfaabd73bb80907dd23182b9347b4245eb5drunc:Version:          1.0.2GitCommit:        v1.0.2-0-g52b36a2docker-init:Version:          0.19.0GitCommit:        de40ad0

2.1.5 卸载docker

停止docker服务
# systemctl stop docker
使用yum命令卸载docker组件
# yum remove docker-ce containerd.io docker-ce-cli

更详细的卸载方法详见官方文档。

使用二进制文件部署

官方不建议此种部署方式,主要因为不能自动更新,在条件有限制的情况下才使用。

二进制安装参考网址:https://docs.docker.com/engine/install/binaries/

在这里插入图片描述

二进制安装包下载地址,打开后,根据uname -r命令结果,来选择对应的内核版本,一般会选x86_64

根据时间选择最新版本,本文用的是:docker-24.0.5.tgz。

找到后,如果不想用浏览器自带的下载工具下载,可以复制链接,然后在linux中使用wget下载。也可以用第三方下载工具下载,下载完了在传到linux里面。

获取二进制文件,此文件中包含dockerd与docker 2个文件。
# wget https://download.docker.com/linux/static/stable/x86_64/docker-24.0.5.tgz下载完毕之后,解压下载的文件
# tar xf docker-24.0.5.tgz
查看解压出的目录,docker
# ls docker
containerd       containerd-shim-runc-v2  docker   docker-init   runc
containerd-shim  ctr                      dockerd  docker-proxy安装解压后的所有二进制文件
# cp docker/* /usr/bin/运行Daemon
# dockerd &回车后会有大量的信息输出,停止后,直接回车即可使用。
如果您需要使用其他选项启动守护程序,请相应地修改上述命令或创建并编辑文件`/etc/docker/daemon.json` 以添加自定义配置选项。确认是否可以使用docker客户端命令
# which docker
/usr/bin/docker使用二进制安装的docker客户端
# docker version
Client:Version:           24.0.5......

Windows安装

在Windows下安装Docker需要下载Docker Desktop。官网下载地址。

Docker Desktop和Vmware不兼容,安装上之后可能会导致Vmware虚拟机无法启动。
将Docker Desktop卸载之后,需要重装VMware Workstation 16,才能正常使用VMware。
推荐大家在Linux中的使用Docker,绝大部分企业环境用的还是Linux。

实现原理

docker desktop可以在windows 上来运行docker的应用服务,是基于windows的Hyper-V服务和WSL2内核在Windows上创建了一个子系统(linux),从而实现其在windows上运行docker。所以电脑上需要开启Hyper-V服务和安装WSL2。

实测目前最新的安全包会自动开启Hyper-V服务,但是WSL服务需要手动更新到最新版。微软WSL更新程序下载。

以下是安装步骤,大家也可以参考这篇文章,写的更详细。

安装步骤

  1. 下载完安装包后,双击即可开始安装。
  2. 默认安装到C盘,无法选择安装路径。其他安装选项保持默认即可。
  3. 等待一段时间后,安装结束,双击桌面上的Docker Desktop图标。
  4. 可能会弹出一段声明,大体意思是Docker Desktop个人或者小型企业使用免费,中大型企业使用收费。点accept即可
  5. 在这里插入图片描述6. 然后点“Continue without signing in”,不注册使用。
  6. 然后就可以看到主界面了。

基本使用

在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

参考说明

本文内容主要来源于马士兵视频教程(容器管理工具 Docker),结合了老师的笔记以及自己的实践做了一些修改。

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

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

相关文章

Docker的基本组成和安装

Docker的基本组成 镜像(image): docker镜像就好比是一个模板,可以通过这个模板来创建容器服务,tomcat镜像 > run > tomcat01容器(提供服务) 通过这个镜像可以创建多个容器(最…

uniapp - 倒计时组件-优化循环时间倒计时

使用定时器的规避方法 为了避免定时器误差导致倒计时计算错误,可以采用一些规避方法,比如将倒计时被中断时的剩余时间记录下来,重新开启定时器时再将这个剩余时间加到新的计算中。同时,为了避免定时器延迟,可以在每次执…

【腾讯云 Cloud Studio 实战训练营】使用python爬虫和数据可视化对比“泸州老窖和五粮液4年内股票变化”

Cloud Studio 简介 Cloud Studio是腾讯云发布的云端开发者工具,支持开发者利用Web IDE(集成开发环境),实现远程协作开发和应用部署。 现在的Cloud Studio已经全面支持Java Spring Boot、Python、Node.js等多种开发模板示例库&am…

docker常用中间件安装

文章目录 1、前言2、中间件安装2.1、mysql2.2、gitlab容器2.3、nacos2.4、redis2.5、xxljob2.6、zipkin2.7、sentinel2.8、seata2.8.1、获取镜像2.8.2、运行容器并获取配置 2.9、rockerMQ2.9.1、rockerMQ-namesrv2.9.2、rockerMQ-broker2.9.3、rockerMQ-console 2.10、jenkins2…

软考(1)-面向对象的概念

目录 一. 软考基本信息 1. 软考时间: 2. 软考科目: 3.专业知识介绍 -- 综合知识考点分布 4. 专业介绍 -- 软件设计考点分布 二. 面向对象概念 1. 封装 考点一:对象 考点二:封装private 2. 继承 考点三:类 考…

uniapp微信小程序使用stomp.js实现STOMP传输协议的实时聊天

简介: 原生微信小程序中使用 本来使用websocket,后端同事使用了stomp协议,导致前端也需要对应修改。 如何使用 1.yarn add stompjs 2.版本 “stompjs”: “^2.3.3” 3.在static/js中新建stomp.js和websocket.js,然后在需要使用…

多线程场景下谨慎使用@Transactional注解,你不信我也没办法

最近遇到一个很诡异的bug,觉得很有趣也很值得分享,于是想写篇文章记录下来,希望有缘人看到以后少踩坑~ 先简单说下场景:有个任务平台,功能很多但我们只关注 提交任务和取消任务 两个功能,并且取消任务后会有…

blender基本操作

文章目录 引言一、选择二、移动1. xyz轴移动2. xyz平面移动3. 精确移动4. 快捷键移动G 三、旋转四、缩放五、变换1. 变换坐标系2. 变换轴心: 六、吸附七、模式切换八、物体的合并和分离1. 合并2.分离 九、设置父子级关系十、叠加层和快速收藏夹1. 叠加层2. 快速收藏…

【算法与数据结构】106、LeetCode从中序与后序遍历序列构造二叉树

文章目录 一、题目二、解法三、完整代码 所有的LeetCode题解索引,可以看这篇文章——【算法和数据结构】LeetCode题解。 一、题目 二、解法 思路分析:首先我们要知道后序遍历数组的最后一个元素必然是根节点,然后根据根节点在中序遍历数组中的…

NSSCTF web 刷题记录1

文章目录 前言题目[GXYCTF 2019]禁止套娃方法一方法二 [NCTF 2019]Fake XML cookbook[NSSRound#7 Team]ec_RCE[NCTF 2018]Flask PLUS 前言 今天是2023.9.3,大二开学前的最后一天。老实说ctf的功力还是不太够做的题目太少,新学期新气象。不可急于求成&am…

【Docker】 08-Dockerfile

什么是Dockerfile Dockerfile可以认为是Docker镜像的描述文件,是由一系列命令和参数构成的教程,主要作用是用来构建docker镜像的构建文件。 Dockerfile解析过程 Dockerfile的保留命令 保留字作用FROM当前镜像是基于哪个镜像的 第一个指令必须是FROMMA…

SpringAOP详解

目录 代理模式 静态代理 动态代理 AOP spring api实现 自定义类实现 使用注解实现 代理模式 AOP的底层机制就是动态代理,所以学习aop之前 , 我们要先了解一下代理模式。 静态代理 拿租房的例子进行举例 抽象角色 : 一般使用接口或者抽象类来实现&#xff…