Docker 入门教程概念

简介: Docker 入门教程概念

作为开发者;
Git 是我们的必备技能;
它可以记录文件开发历史;
可以在本地和服务器上保持文件的一致性;

但是我们的代码都依赖于运行环境;
比如说典型的 LNMP 环境;
如果环境不一致;
代码跑出来的效果肯定也是很多问题的;
那能不能像管理代码一样来管理运行环境呢? Docker 就可以达到统一运行环境的目的; Docker 的精髓就在于可以保证各个环境的一致性;

一个经常拿来跟 Docker 对比的是虚拟机;
虚拟机是虚拟了一个完整的系统;
比如说我们可以在 Mac 电脑上启动一个 Windows 系统的虚拟机;
虚拟机的优点是隔离性非常的强;
缺点是因为是虚拟的完整的操作系统;
所以性能损耗也比较大;
比较占用资源;
而 Docker 则是使用了 linux 底层的 Namespace 和 Cgroups ;
Namespace 主要是进行隔离;
而 Cgroups 则是控制、限制资源比如说 CPU、内存等; 因此优缺点跟虚拟机相反;
性能损耗非常小;
但是隔离的没有虚拟机彻底;

Docker 有三大核心概念;

容器
镜像
仓库
这里举个不是很恰当但是 PHPer 容易理解的类比;

Docker WordPress
容器 一个正运行着的 WordPress 网站
镜像 WordPress 的源代码
仓库 托管 WordPress 源代码的 Github
仓库类似于 Github ;
Github 上面有很多项目代码; 仓库里面有很多的镜像;

镜像类似于托管在 Github 上的 WordPress 源代码;
我们可以从 Github 仓库上拉取 WordPress 代码;
从仓库中拉取镜像; 代码是静态的;
镜像也是静态的;

如果我们想要一个可以访问的博客应用;
我们需要把 WordPress 的代码运行起来;
我要想得到一个容器; 我们就需要运行一个镜像;

是时候拿出吃灰用的服务器了;
后续的文章中我都是在 Linux 18.04 中操作;
Mac 和 Windows 中 Docker 的实现跟 Linux 中的不完全一样;
建议在 Linux 服务器或者 Linux 虚拟机中学习;
另外 Docker 需要 sudo 权限;
后续的文章都是在 sudo -i 后执行的;

本系列文章主要是作为索引带领大家入门 Docker ;
不会对每个知识点都详尽讲解;
有兴趣的同学自行搜索学习扩展;

目录
相关文章
|
6月前
|
存储 监控 安全
【专栏】探讨Docker Compose的核心概念、使用方法及最佳实践,助你轻松驾驭容器编排的世界
【4月更文挑战第27天】Docker Compose是款轻量级容器编排工具,通过YAML文件统一管理多容器应用。本文分三部分深入讨论其核心概念(服务、网络、卷和配置)、使用方法及最佳实践。从快速入门到高级特性,包括环境隔离、CI/CD集成、资源管理和安全措施。通过案例分析展示如何构建多服务应用,助力高效容器编排与管理。
426 2
|
6月前
|
存储 持续交付 Docker
Docker 的基本概念和优势,以及在应用程序开发中的实际应用。
Docker 的基本概念和优势,以及在应用程序开发中的实际应用。
97 0
|
3月前
|
Ubuntu NoSQL Linux
一文讲明Docker的基本使用,常见Docker命令使用 、Docker的安装使用等【详细说明+图解+概念+实践】
这篇文章详细介绍了Docker的基本使用,包括Docker的安装、常用命令、架构概念等,并通过图解和实践帮助读者快速掌握Docker的使用方法。
一文讲明Docker的基本使用,常见Docker命令使用 、Docker的安装使用等【详细说明+图解+概念+实践】
|
3月前
|
Linux 持续交付 虚拟化
在Linux中,Docker和容器虚拟概念是什么?
在Linux中,Docker和容器虚拟概念是什么?
|
3月前
|
监控 安全 Linux
Docker——基础概念与操作
Docker——基础概念与操作
43 0
|
5月前
|
Java Linux Shell
Docker核心概念与使用
Docker学习笔记和总结,涵盖了Docker的核心概念、基本操作和实战应用。
130 10
|
5月前
|
存储 运维 持续交付
介绍 Docker 的基本概念和优势,以及在应用程序开发中的实际应用。
介绍 Docker 的基本概念和优势,以及在应用程序开发中的实际应用。
64 0
|
6月前
|
存储 Kubernetes Docker
Kubernetes(K8S)集群管理Docker容器(概念篇)
Kubernetes(K8S)集群管理Docker容器(概念篇)
|
6月前
|
存储 运维 数据中心
Docker 的基本概念和优势,以及在应用程序开发中的实际应用。
Docker是容器化技术,基于镜像(只读模板)创建可移植的容器,确保应用及其服务在隔离环境中运行。其优势包括快速部署(整个应用打包一次部署)、跨平台兼容、统一运行环境、资源隔离和简化依赖管理。Docker在开发和运维中都发挥作用,助力高效测试、部署和提升生产稳定性。
174 3
|
6月前
|
前端开发 Ubuntu 开发者
【Docker系列】Docker-核心概念/常用命令与项目部署实践
【4月更文挑战第1天】 Docker是容器化技术,打包应用及依赖,实现快速部署。核心概念包括镜像、容器和仓库。镜像是只读模板,容器是镜像运行实例,仓库用于存储和分发镜像。常用命令如`docker search`、`docker pull`、`docker images`、`docker ps`等。安装Docker在Ubuntu上涉及`apt-get update`、`install docker-ce`等步骤。了解这些基础,开发者能更高效地部署和管理应用。Docker简化了环境配置,增强了软件的可移植性和扩展性,是现代开发的必备技能。
544 3