干货 | 应用打包还是测试团队老大难问题?
本文节选自霍格沃兹测试学院内部教材
Docker
是一个开源的应用容器引擎,基于 Go 语言开发,Docker
可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的系统。
Docker
是世界领先的软件容器平台,Docker 官方的口号是”调试你的应用,而不是调试环境“。在进行多人协作开发时,开发者可以使用
Docker
来消除所谓“我这里运行是好的”(works on my machine)问题,运维人员使用 Docker
来并行的运行和管理应用来获得更优计算密度,基于各自独立的容器,不会因为环境原因导致应用运行错误。
如下图所示:在工作当中,如果我们面对这样多的服务、多个服务器,以及多种环境,我们应该如何处理呢?如果还继续用传统的方式打包部署,我们会浪费多少时间?
所以在 Docker
横空出世之前,应用打包一直是大部分研发团队的痛点,在 Docker
出现后,它以更高效的利用系统资源、更快速的启动时间、一致的运行环境、持续交付和部署、更轻松的迁移、更轻松的维护和拓展,6大优点迅速火了起来。
Docker 的三个概念:
-
镜像(Image):是一个包含有文件系统的面向Docker引擎的只读模板。任何应用程序运行都需要环境,而镜像就是用来提供这种运行环境的。例如一个 Ubuntu 镜像就是一个包含 Ubuntu 操作系统环境的模板。
-
容器(Container):类似于一个轻量级的沙盒,可以将其看作一个极简的 Linux 系统环境(包括 root 权限、进程空间、用户空间和网络空间等),以及运行在其中的应用程序。Docker 引擎利用容器来运行、隔离各个应用。容器是镜像创建的应用实例,可以创建、启动、停止、删除容器,各个容器之间是是相互隔离的,互不影响。注意:镜像本身是只读的,容器从镜像启动时,Docker 在镜像的上层创建一个可写层,镜像本身不变。
-
仓库(Repository):镜像仓库,是 Docker 用来集中存放镜像文件的地方。
** Docker 安装**
Docker
是开源的商业产品,有两种版本:社区版(Community Edition,缩写为 CE)和企业版(Enterprise
Edition,缩写为 EE)。企业版包含了一些收费服务,一般用不到。我们下面将会演示 Docker CE
版本的使用方法。
Docker
支持很多操作系统平台,有大家常用的 Microsoft Windows 系列操作系统(Docker 不支持 Windows 10
家庭版系统),Linux 发行版和 macOS 系统。
Windows 上两种安装方式
Windows 上有两种安装 Docker
方式:
• 第一种:访问 Docker
网站下载 Docker Desktop
软件的 exe 文件,下载地址:
https://download.docker.com/win/stable/Docker Desktop Installer.exe
• 第二种:使用 Chocolatey 包管理工具安装 Docker。(包管理工具需自行下载安装)
choco install docker-for-windows
Linux 发行版 Ubuntu 系统安装
1. 切换到管理员权限
su root
2. 安装必要的一些系统工具
apt-get update
apt-get -y install apt-transport-https ca-certificates curl
software-properties-common
3.安装 GPG 证书
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
4.写入软件源信息
add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
5.更新并安装 Docker-CE
apt-get -y update
apt-get -y install docker-ce
Linux 发行版 CentOS 系统安装
1.切换到管理员权限
su root
2.安装必要的一些系统工具
yum install -y yum-utils device-mapper-persistent-data lvm2
3.添加软件源信息
yum-config-manager --add-repo \http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
4.更新并安装 Docker-CE
yum makecache fast
yum -y install docker-ce
macOS 上两种安装 Docker 方式
• 第一种:访问 Docker
网站下载 Docker Desktop
的 dmg
安装包,下载地址:https://download.docker.com/mac/stable/Docker.dmg
• 第二种:使用包管理工具方式来安装 Docker
,使用Homebrew
工具安装 Docker。(包管理工具需自行下载安装)
brew cask install docker
** 常用操作**
1. 启动 Docker
systemctl start docker
2. 重新启动 Docker
systemctl restart docker
3. 开机时自动启动 Docker
systemctl enable docker
4. 查看 Docker 运行状态
systemctl status docker
** _ _
来霍格沃兹测试开发学社,学习更多软件测试与测试开发的进阶技术,知识点涵盖web自动化测试 app自动化测试、接口自动化测试、测试框架、性能测试、安全测试、持续集成/持续交付/DevOps,测试左移、测试右移、精准测试、测试平台开发、测试管理等内容,课程技术涵盖bash、pytest、junit、selenium、appium、postman、requests、httprunner、jmeter、jenkins、docker、k8s、elk、sonarqube、jacoco、jvm-sandbox等相关技术,全面提升测试开发工程师的技术实力
QQ交流群:484590337
公众号 TestingStudio
点击获取更多信息
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了