Docker简介 MacM1安装Docker

文章目录

  • [1 Docker简介](#1 Docker简介)
  • [2 Docker VS 虚拟机](#2 Docker VS 虚拟机)
    • [1 Docker优势](#1 Docker优势)
    • [2 Docker用途](#2 Docker用途)
  • [3 MacM1 下载安装Docker](#3 MacM1 下载安装Docker)
    • [1 配置环境变量](#1 配置环境变量)
  • [4 配置Docker](#4 配置Docker)
    • [2 设置Docker资源](#2 设置Docker资源)
    • [3 设置Docker镜像](#3 设置Docker镜像)
  • 参考

1 Docker简介

Docker主要解决了软件开发和运行配置的问题,但是由于其功能的强大,也被应用到服务器集群管理中

在以往的软件开发与部署的过程中,软件往往因为计算机环境的不同而导致其在不同的计算机环境上无法正常运行,原因有:

  • 版本环境不兼容
  • 依赖过时

解决方案:

既然环境不同,那我将环境一起打包不就好了。即把整个操作系统打包,这样又会导致软件安装包过大,对于一些常见的应用服务来说十分臃肿,反而阻碍了软件的传播

怎么即能很好的打包应用,又能减少软件安装包的体积?设置一个中间层,因此Docker技术就此诞生。

Docker技术用来解决软件和其依赖环境一起打包的问题

  • 将应用和 bin/libs一起打包,以最小化安装环境
  • 应用在Docker上隔离,相互独立运行,每个应用可以看作一个进程

Docker的原理:Docker直接在内核创建硬件虚拟的操作系统实例,进而在不同系统之间隔离了进程和资源

2 Docker VS 虚拟机

既然Docker也是创建操作系统的实例,那Docker与虚拟机技术有什么不同?

相比虚拟机:

  • Docker不需要主机支持虚拟化技术,使用虚拟机必须开启虚拟化技术
  • 虚拟机模拟了真实的环境,因此虚拟机内的操作系统功能更加完全,占用资源更多,并且单独占用一部分空间;而Docker只是在内核上虚拟一个Linux系统,需要的资源只需要程序能够运行即可,因此Docker镜像文件很小,一个Linux系统可能就只有100MB之内。当运行这个系统,可以发现,Docker中系统很多都是功能不全的
  • 虚拟机是完全虚拟化技术,模拟完整的低层硬件环境执行指令。Docker是系统级虚拟化,通过内核来创建操作系统来运行。其中多个容器是隔离的,但是共享操作系统内核
  • 虚拟机配置更加复杂,对于简单应用来说没有必要

1 Docker优势

除了与虚拟机比之外,Docker还具有其他的优势:

  • 将应用和依赖函数库打包后形成镜像,软件的移植方便
  • 容器相当于沙箱机制,相互隔离,运行应用更加安全

但是,Docker需要依赖宿主机的内核

2 Docker用途

提供一次性的环境:软件测试时使用

提供弹性云服务,容器可以随时开关,可以实现动态的扩容和缩容

组件微服务,一台机器可以跑多个服务,在一台主机模拟微服务

3 MacM1 下载安装Docker

官方下载:https://docs.docker.com/desktop/install/mac-install/

下载后拖拽到 applications 文件夹即可

1 配置环境变量

bash 复制代码
zsh: command not found: docker

配置用户文件

shell 复制代码
cd
vim .zshrc

添加一下内容

shell 复制代码
DOCKER_HOME=/Applications/Docker.app/Contents/Resources
PATH=$DOCKER_HOME/bin:$PATH

export PATH

生效配置

shell 复制代码
source .zshrc

查看Docker版本

shell 复制代码
> docker -v
Docker version 27.0.3, build 7d4bcd8

4 配置Docker

2 设置Docker资源

3 设置Docker镜像

登录阿里云镜像服务中心:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors

登录后即可获取一个地址

添加到配置文件中,然后Apply and Restart

或者手动重启Docker


参考

mac M1 下安装docker 及相关镜像 https://blog.csdn.net/qq_36780538/article/details/118381210

Docker配置阿里云镜像仓库 http://blog.java1234.com/blog/articles/572.html

zsh: command not found: docker https://blog.csdn.net/qq_45296221/article/details/122191265

相关推荐
小夏卷编程5 小时前
Ubuntu 20.04.4 宝塔 docker showdoc v3.2 更新到v3.7.3
运维·docker·容器
NGBQ121385 小时前
Royal TSX 6.0.2.1000 .dmg 全解析:Mac 端企业级远程连接管理工具深度指南
macos
JEECG低代码平台6 小时前
JeecgBoot低代码平台 Docker 部署 OnlyOffice 文档服务完整指南
低代码·docker·容器
生活爱好者!6 小时前
NAS帮我找回童年的快乐!部署 小游戏
运维·服务器·docker·容器·娱乐
自在极意功。7 小时前
nginx和docker面试题
运维·nginx·docker
CHQIUU8 小时前
解决 npm 全局安装 EACCES 权限问题(macOS 篇)
前端·macos·npm
不做超级小白9 小时前
执行docker命令时自动启动Docker Desktop?一个小工具让开发体验更丝滑
windows·docker
222you9 小时前
Ubuntu当中的Docker安装和镜像管理
ubuntu·spring cloud·docker
Jason_WangYing10 小时前
mac M2运行brew时报错unknown or unsupported macOS version: “26.3“ (MacOSVersionError)
macos
心易行者10 小时前
别再说“在我的机器上能跑”了!Docker 入门指南,专治各种环境不服
运维·人工智能·docker·容器