Docker - 入门基础

ops/2024/10/22 14:39:18/

原文地址,使用效果更佳!

Docker - 入门基础 | CoderMast编程桅杆icon-default.png?t=N7T8https://www.codermast.com/dev-tools/docker/docker-basic.html

docker架构">Docker架构

Docker 使用的是客户端-服务端(C/S)架构模式,使用远程 API 来管理和创建 Docker 容器

Docker 客户端与 Docker 守护进程,负责构建、运行和 分发 Docker 容器。Docker 客户端和守护程序可以 在同一系统上运行,或者您可以将 Docker 客户端连接到远程 Docker 守护进程。Docker 客户端和守护程序使用 REST API 通过 UNIX 进行通信 套接字或网络接口。另一个 Docker 客户端是 Docker Compose, 这样,您就可以使用由一组容器组成的应用程序。

  • Docker客户端:可以是基于命令行的 Docker 客户端,也可以是基于图形化界面的 Docker 应用。

  • Docker服务端:一个运行 Docker 服务的机器,可以是本地主机,也可以是远程的服务器。

  • Docker守护进程:Docker 守护程序 () 侦听 Docker API 请求并管理 Docker 对象,例如映像、容器、网络和卷。守护进程也可以 与其他守护进程通信以管理 Docker 服务。

  • Docker桌面:是指在 Windows、Mac、Linux环境中易于安装,可视化构建和共享容器的应用程序。

Docker 的架构和 Redis 的几乎相同。

docker镜像加速">Docker镜像加速

Docker 安装好之后,在使用时我们需要拉取 Docker 镜像,这些 Docker 镜像存储在国外的 DockerHub 中,在国内访问不稳定,故此 Docker 官方和国内许多服务商提供了国内的加速器服务。

  • Docker官方:https://registry.docker-cn.comopen in new window
  • 阿里云:https://help.aliyun.com/document_detail/60750.htmlopen in new window
  • 网易:http://hub-mirror.c.163.comopen in new window
  • USTC:https://docker.mirrors.ustc.edu.cnopen in new window
  • 七牛云:https://reg-mirror.qiniu.comopen in new window

这里以 Docker 官方提供的国内加速服务为样例,进行配置教程,其他服务商的配置同理。

  • 命令行配置

对于使用 systemd 的系统,请在 /etc/docker/daemon.json 中写入如下内容(如果文件不存在请新建该文件)

之后重新启动服务

sudo systemctl daemon-reload
sudo systemctl restart docker
  • 可视化界面配置

在设置中的 Docker Engine 内,插入如下配置即可。

"registry-mirrors":["https://registry.docker-cn.com"
]

插入,保存后,需要重启才能够生效。

  • 检查镜像是否生效
docker info 

Registry Mirrors:https://registry.docker-cn.com/

只要出现如上的镜像链接,就是已经配置成功了。

样例剖析

提示

对上一节中的 centos 实例进行分析

Docker 允许在容器内运行应用程序,使用 docker run 命令来在容器内运行一个应用程序。这里同样是个Hello World,不同在于它是在容器内部运行的。

docker run centos:latest /bin/echo "Hello World"

我们看下各个参数的含义:

  • docker: Docker 的二进制执行文件。
  • run: 与前面的 docker 组合来运行一个容器
  • centos:latest:指定要运行的镜像,Docker 首先从本地主机上查找镜像是否存在,如果不存在,Docker 就会从镜像仓库 Docker Hub 下载公共镜像。
  • /bin/echo "Hello world": 在启动的容器里执行的命令以上命令。

完整的意思可以解释为:Docker 以 centos 最新的(默认是latest) 镜像创建一个新容器,然后在容器里执行 bin/echo "Hello world",然后输出结果。


http://www.ppmy.cn/ops/5512.html

相关文章

Flutter 热修复(Shorebird)

Shorebird:https://docs.shorebird.dev/ 我们都知道安卓原生开发,热修复已经不是什么难题。阿里云,腾讯云已经都有现成的SDK可以接入。 然而Flutter开发还一直没有类似热修复的开发库,无意中看到了Shorebird这个平台&#xff0c…

Visual Studio2010源码编译curl_7_60

一、源码解压目录内容 很开心里面可以找到CMakeLists.txt文件,说明可以实用CMake工具进行构建,由于多数开源项目都选择实用CMake作为构建编译工具,大家蝇该都比较熟练了。 二、实用CMake开始构建Visual Studio 2010工程 很顺利整个构建过程没…

【软考】UML中的图之类图

目录 1. 说明2. 图示3. 类图使用方式3.1 对系统的词汇建模3.2 对简单的协作建模3.3 对逻辑数据库模式建模 1. 说明 1.类图(Class Diagram)展现了一组对象、接口、协作和它们之间的关系。2.在面向对象系统的建模中所建立的最常见的图是类图。3.类图给出系…

docker基础

docker为什么出现 docker和传统虚拟机的对比 docker三要素 docker平台结构 docker常用命令 docker iamges docker search 容器命令 docker ps 镜像分层 容器数据卷 查看数据卷是否挂载成功 读写规则 分布式存储 容错性

移植speexdsp到OpenHarmony标准系统③

speexdsp移植后已提交至openhamrony sig仓库:https://gitee.com/openharmony-sig/contest/tree/master/2022_OpenHarmony_thirdparty/speexdsp 四、将三方库加入到OpenHarmony的编译体系 根据上一步分析结果,编写gn文件,将三方库加入到OpenH…

运行python脚本下载官网安装包进行安装

背景介绍:1.由于公司业务人员window系统没有管理员用户权限,使用的是普通用户权限登陆的,因此不能自己安装软件。但是有时候涉及到软件的大批量更新,人工一个一个的去安装,效率太低,人工成本太高&#xff0…

jvm概述

JVM(Java Virtual Machine,Java虚拟机)是Java程序运行的核心组件,它是一个运行时环境,负责将Java字节码(bytecode)转换为机器码并执行。JVM是平台相关的,这意味着不同的操作系统需要…

leetcode748-Shortest Completing Word

题目 给你一个字符串 licensePlate 和一个字符串数组 words ,请你找出 words 中的 最短补全词 。 补全词 是一个包含 licensePlate 中所有字母的单词。忽略 licensePlate 中的 数字和空格 。不区分大小写。如果某个字母在 licensePlate 中出现不止一次&#xff0c…