霍格沃兹测试开发学社

《Python测试开发进阶训练营》(随到随学!)
2023年第2期《Python全栈开发与自动化测试班》(开班在即)
报名联系weixin/qq:2314507862

背熟这些 Docker 命令,面试再也不怕啦~

本文节选自霍格沃兹测试学院内部教材

我们下载 Docker 镜像的时候,默认会访问 Docker 网站,而 Docker
网站是在国外部署的,距离比较远下载速度特别慢。我们可以通过设置加速器的方式来加速 Docker 镜像下载的速度。下面将描述一下使用加速器的步骤:

1.我们这里选择的是阿里云提供的Docker
镜像加速器服务,首先访问阿里云的镜像仓库:https://cr.console.aliyun.com/(如果没有阿里云账号则需要注册)

2.选择“镜像加速器”

3.根据个人的系统平台,选择运行 Docker 的 OS,并按照操作文档的要求修改Docker 配置文件,然后重启 Docker
服务即可完成加速器的配置。

** Docker 常用命令**

Docker 的常用命令一般分为:镜像管理、容器管理。

查看 Docker 版本

docker version

镜像管理命令

下面使用 busybox 软件作为示例,busybox软件是一个集成了非常多最常用的 Linux 命令和工具的软件集合。

查看所有镜像

docker images
  • REPOSITORY:镜像来自哪个仓库

  • TAG:镜像的标签信息,版本之类的信息

  • IMAGE ID:镜像创建时的id

  • CREATED:镜像创建的时间

  • SIZE:镜像文件大小

下载软件镜像

docker pull busybox:latest

latest表示使用busybox软件的最新版本,所以软件默认下载都是 latest 版本。

导出镜像

docker save busybox > busybox.tar

• 把busybox镜像导出为 busybox.tar 文件,可以把 busybox.tar
文件复制到别的操作系统上使用,免除下载时网络慢的问题。

删除镜像

docker rmi busybox:latest

• 镜像一般都会根据版本打包,如果有下载一个软件的多个版本就需要指定具体版本信息。如 busybox:1.26 就会删除 busybox 软件的
1.26 版本的镜像,不会删除latest 版本的镜像。

导入镜像

docker load < busybox.tar

• 使用导出命令导出的镜像,可以通过此命令导入到没有下载此软件的操作系统,方便网络条件差的情况使用。

更改镜像名

docker tag busybox:latest busybox:test

• busybox:latest原镜像名,busybox:test要改成的镜像名

容器管理命令

运行容器

docker run -d --name=busybox busybox:latest ping 114.114.114.114

• run:run参数代表启动容器
• -d:以后台daemon的方式运行
• --name:指定一个容器的名字,此后操作都需要使用这个名字来定位容器。
• busybox:latest:容器所使用的镜像名字
• ping 114.114.114.114:启动容器执行的命令

查看运行的容器

docker ps

查看所有容器

docker ps -a
  • CONTAINER ID:容器启动的id

  • IMAGE:使用哪个镜像启动的容器

  • COMMAND:启动容器的命令

  • CREATED:创建容器的时间

  • STATUS:容器启动时间

  • PORTS:容器映射到宿主机的端口

  • NAMES:容器启动的名字

启动容器

docker start busybox

重新启动容器

docker restart busybox

停止容器

docker stop busybox

杀死容器

docker kill busybox

删除运行中的容器

docker rm -f busybox

执行容器内命令

docker exec -it busybox ls

• -it 交互终端

复制容器内文件

docker cp busybox:/etc/hosts hosts

查看容器日志

docker logs -f busybox

** _
来霍格沃兹测试开发学社,学习更多软件测试与测试开发的进阶技术,知识点涵盖web自动化测试 app自动化测试、接口自动化测试、测试框架、性能测试、安全测试、持续集成/持续交付/DevOps,测试左移、测试右移、精准测试、测试平台开发、测试管理等内容,课程技术涵盖bash、pytest、junit、selenium、appium、postman、requests、httprunner、jmeter、jenkins、docker、k8s、elk、sonarqube、jacoco、jvm-sandbox等相关技术,全面提升测试开发工程师的技术实力
QQ交流群:484590337
公众号 TestingStudio
点击获取更多信息

posted @ 2021-12-31 10:04  霍格沃兹测试开发学社  阅读(54)  评论(0编辑  收藏  举报