新手三天入门docker第一天:docker的了解与安装

60 阅读2分钟

docker的存在解决了哪些问题?

  1. 统一标准。
    1. 不同的应用有不同的编程语言,使用docker build将应用打成docker镜像,可以有效解决跨语言的问题。
    2. 支持应用分享。可以将docker镜像放在置顶地方。
    3. 支持应用运行。使用docker run可以运行景象。
  2. 资源隔离。
    1. 访问设备之间隔离
    2. cpu、memory资源隔离
    3. 用户、用户组隔离 docker的使用从虚拟化时代进入容器化时代。基础镜像MB级别,隔离性强,移植和分享很方便。
  • 可移植性:不依赖具体的操作系统或云平台,比如在阿里云或腾讯云直接随意迁移。

  • 安装包小:容器只需要其应用程序以及它需要运行的所有容器和库的依赖清单,不需要将所有的依赖库都打包在一起。

docker架构

  • docker_host:安装docker的主机
  • docker deamon:运行在docker主机上的docker后台进程
  • registry:镜像仓库,如docker hub
  • images:镜像
  • containers:容器,由镜像启动起来正在运行的程序

image.png

docker命令实战

安装docker

其他系统参照如下文档 docs.docker.com/engine/inst…

  1. 移除其他docker安装包
sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine
  1. 配置yum源
sudo yum install -y yum-utils
sudo yum-config-manager \
--add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
  1. 安装docker。docker-ce是社区版,docker-ce-cli是操作docker的命令行工具,containerd.io是docker的容器化工具。
sudo yum install -y docker-ce docker-ce-cli containerd.io
  1. 配置自启动
systemctl enable docker --now
  1. 配置镜像加速,参考https://cr.console.aliyun.com/cn-beijing/instances/mirrors
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://rvzmkti6.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

开启掘金成长之旅!这是我参与「掘金日新计划 · 2 月更文挑战」的第 20 天,点击查看活动详情