Docker 入门(一)

简介: Docker 入门(一)

程序明明在我本地跑得好好的,怎么部署上去就出问题了?如果要在同一台物理机上同时部署多个 node 版本并独立运行互不影响,这又该怎么做?如何更快速的将服务部署到多个物理机上?


“Build once , run anywhere” ,既可以保证环境的一致性,同时又能更方便的将各个环境相互隔离,还能更快速的部署各种服务,这就是 docker 的能力。




01


基本概念



一张图慢慢讲:



1、本地开发写好了 code ,首先我们需要通过 build 命令构建 image 镜像,而构建的规则呢,就需要写在这个 dockerfile 文件里。


2、image 镜像是什么?静态的、只读的文件(先不着急,有个基本印象,后面再慢慢讲)。如何更方便的区分不同的镜像呢,通过 tag 命令给镜像打上标签就行了。


3、image 镜像存在哪里?通过 push 命令推送到 repository 镜像仓库,每个仓库可以存放多个镜像。


4、registry 是啥?仓库服务器,所有 repository 仓库都必须依赖于一个 registry 才能提供镜像存储的服务。我们在自己的物理机上安装一个 registry ,这样可以构建自己私有的镜像仓库了。


5、镜像光存到仓库里可没用,还要能部署并运行起来。


6、首先通过 pull 命令将仓库里的镜像拉到服务器上,然后通过 run 命令即可将这个镜像构建成一个 container 容器,容器又是什么?是镜像的运行时,读取镜像里的各种配置文件并如同一个小而独立的服务器一样运行你的各种服务。到这里,你的一个服务就算是部署并运行起来了。


7、数据怎么办?通过 volume 数据卷可以将容器使用的数据挂在到物理机本地,而各个容器之间相互传递处理数据呢,统一通过另一个 volume container 数据卷容器提供数据的服务,数据卷容器也只是一个普通的容器。


8、image 镜像怎么导入导出到本地?通过 save 命令即可导出成压缩包到物理机本地磁盘上,通过 load 命令就可以导入成 docker 环境下的镜像。


9、container 容器的导入导出呢?通过 export 命令同样可以导出到物理机本地磁盘,但是与镜像导出不同的是,这样导出的只是一个容器的快照文件,这就是说它会丢弃所有的历史记录和元数据信息,只记录了当前容器的状态。导入则是 import 命令,但是只能导入为另一个 image 镜像,而不能直接就导入成容器,容器只是一个运行时。



02


结语



本文先简单的介绍下 docker 里的一些基本概念和常用命令,后续会慢慢继续讲解,以及如何在 node 中使用。


目录
相关文章
|
1月前
|
关系型数据库 MySQL Java
Docker Compose详细教程(从入门到放弃)
Docker Compose详细教程(从入门到放弃)
331 0
|
1月前
|
存储 虚拟化 数据中心
Docker容器化应用程序的入门指南
【4月更文挑战第28天】
125 0
|
26天前
|
Shell iOS开发 Docker
|
1月前
|
Ubuntu 应用服务中间件 Shell
Docker入门
Docker入门
37 0
|
1月前
|
存储 Ubuntu Linux
Docker 从入门到实践:Docker介绍
Docker 从入门到实践:Docker介绍
|
1月前
|
应用服务中间件 持续交付 nginx
【Docker专栏】Docker入门指南:快速构建你的第一个容器
【5月更文挑战第7天】Docker 入门指南:容器化应用利器。了解 Docker 核心概念——镜像、容器和仓库。安装 Docker 后,运行官方 `hello-world` 验证安装,再尝试运行 `nginx` Web 服务器。通过端口映射访问容器内服务,学习管理容器命令。创建自定义镜像,编写 Dockerfile,实现 Python Web 应用容器化。Docker 助力高效开发与运维,探索更多自动化部署与微服务场景。
【Docker专栏】Docker入门指南:快速构建你的第一个容器
|
1月前
|
安全 Linux 数据库
Docker 入门详解
通过遵循这些步骤,你将能够快速入门 Docker 并开始探索容器化的世界,关注 V 哥,技术之路一起成长。
|
1月前
|
存储 Apache Swift
无限套娃_docker入门(镜像、容器、仓库)
无限套娃_docker入门(镜像、容器、仓库)
55 0
|
1月前
|
Linux 虚拟化 Docker
docker入门
docker入门
29 2
|
1月前
|
存储 运维 Docker
Docker从入门到精通:Docker 容器数据卷详解
Docker 数据卷是持久化容器数据的关键机制,允许跨容器或主机共享,即使容器删除数据仍保留。创建数据卷可通过命令行或容器启动时指定,挂载到容器目录以读写。使用 `docker volume` 命令可管理数据卷,适用于持久化存储、数据共享及备份场景。了解和善用数据卷能优化 Docker 应用程序的运维。
118 0