Docker基本概念

目录

一、解决的问题

1.统一标准

  • 应用构建
    • Java、C++、JavaScript
    • 打成软件包
    • .exe
    • docker build ... 镜像
  • 应用分享
    • 所有软件的镜像放到一个指定地方 docker hub
    • 安卓,应用市场
  • 应用运行
    • 统一标准的 镜像
    • docker run

2.资源隔离

  • cpu、memory资源隔离与限制
  • 访问设备隔离与限制
  • 网络隔离与限制
  • 用户、用户组隔离限制

二、架构

  • Docker_Host:
    • 安装Docker的主机
  • Docker Daemon:
    • 运行在Docker主机上的Docker后台进程
  • Client:
    • 操作Docker主机的客户端(命令行、UI等)
  • Registry:
    • 镜像仓库
    • Docker Hub
  • Images:
    • 镜像,带环境打包好的程序,可以直接启动运行
  • Containers:
    • 容器,由镜像启动起来正在运行中的程序

交互逻辑

装好Docker,然后去 软件市场 寻找镜像,下载并运行,查看容器状态日志等排错

三、安装

1.centos下安装docker

其他系统参照如下文档
https://docs.docker.com/engine/install/centos/

2.移除以前docker相关包

csharp 复制代码
sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

3.配置yum源

csharp 复制代码
sudo yum install -y yum-utils
sudo yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

4.安装docker

csharp 复制代码
sudo yum install -y docker-ce docker-ce-cli containerd.io


#以下是在安装k8s的时候使用
yum install -y docker-ce-20.10.7 docker-ce-cli-20.10.7  containerd.io-1.4.6

5.启动

csharp 复制代码
systemctl enable docker --now

6.配置加速

这里额外添加了docker的生产环境核心配置cgroup

csharp 复制代码
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://82m9ar63.mirror.aliyuncs.com"],
  "exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m"
  },
  "storage-driver": "overlay2"
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

这里扩展一下阿里云为我们提供了免费的加速器

相关推荐
努力买辣条4 小时前
基于 Docker 的高可用 WordPress 集群部署:分布式 Nginx + Keepalived、MySQL 主从复制与 ProxySQL 读写分离
分布式·nginx·docker
程序员 _孜然6 小时前
Ubuntu/Debian修改网卡名字enP3p49s0为eth0
linux·运维·驱动开发·嵌入式硬件·ubuntu·debian
IDIOT___IDIOT6 小时前
Linux mount 命令
linux·运维·服务器
暗流者6 小时前
AAA 服务器与 RADIUS 协议笔记
运维·服务器·笔记
锐策6 小时前
Git checkout 与 Git reset 核心区别解析(分支与版本关联逻辑)
运维·git
CTRA王大大7 小时前
【golang】制作linux环境+golang的Dockerfile | 如何下载golang镜像源
linux·开发语言·docker·golang
算力魔方AIPC11 小时前
如何用算力魔方4060安装PaddleOCR MCP 服务器
运维·服务器
Ray Song12 小时前
【Linux】 wget、curl 用法区别
linux·运维·服务器·curl·wget
@寄居蟹12 小时前
Docker 命令大全
docker·容器·eureka
小妖66612 小时前
本地文件夹即时变身 Web 服务器(文件服务器)
运维·服务器