Docker基础:简单入门docker

图片

以上是 docker 的图标,鲸鱼就类比操作系统,集装箱就类比一个个容器。

docker 就是一个软件,学习 docker 也就是学习一个软件的使用。对于不熟悉,不曾接触的技术或东西,难免会心生担忧、恐惧、畏难等等情绪。总觉得对一个个概念晦涩难懂,看来看去也不知所以云。当然这些经历也在所难免,跨过了这个阶段,你就会又成长了一步。

事出必有妖,先探究一下为什么会有 docker 的出现,说白了就是在两台或多台机器上部署一样的环境太过于麻烦了,耗时耗力且容易出错。简单理解就是,用 docker 可以快速复制一个一模一样的环境,就这么简单。

至于 docker 软件如何安装,这个可以看看官方文档或者一些教程即可,安装一个一个软件,想难住你,那是不可能的。可先忽略。

先介绍几个核心概念:

镜像:不要想得那么高深莫测,就类似一个模板集装箱(当然具体实现肯定是高深莫测的)。

容器:通过镜像(模板),生成的一个具体的集装箱。

Docker Hub:就是存放镜像的地方。

再介绍一些相关命令,命令详细参数,查看文档即可,这里主要过一下。

镜像相关命令:

首先你得需要一个镜像吧,拉取镜像:docker pull

拉取镜像后,得看看吧,查看本地有哪些本地镜像:docker images

想查看镜像详情:docker inspect

镜像不要了,想删除?:docker rmi

好了以上三个命令,就大致知道获取镜像,查看镜像,删除镜像了。

容器相关命令:

想要有容器,得先创建一个吧:docker run (通过使用镜像(即模版)创建一个容器

创建了,想查看:docker ps

创建了,想删除:docker rm

想让容器运行起来:docker start

想进去容器看看:docker exec (可以把容器当做一个完整的操作系统就行了)

想让容器停止:docker stop

想看容器运行日志:docker logs

想看容器的详细信息:docker inspect

好了,了解以上镜像和容器的基本几个命令,就不至于手足无措了。

接着再介绍一个概念:数据卷

数据卷:不要想得太复杂,就是当你想删除容器,容器里的有些文件不想删除怎么办,就是运用数据卷(这个技术)把容器内的文件映射到宿主机(就是你运行容器的这台机器)中。这样删除容器后,文件并不会删除。你在宿主机更改文件,容器内对应的文件也会更着修改(就是一个文件)。

使用数据卷的命令:就是运行容器的时候,加多一个 -v 参数及映射的目录,docker run -v 具体看文档就行。

有了镜像、容器、数据卷的概念后,再补充一个命令,就是如何让本地两个容器之间网络互通。

首先创建一个自定义网络:docker network create

然后创建容器的时候指定使用自定义的网络:docker run –net

当多个容器使用同一个自定义网络,它们之间网络就互通了。

最后还有两个命令:

把镜像导出为压缩包:docker save

把压缩包在另一个机器上解压:docker load

有了镜像,在两台或多台机器上部署,环境一致将不再是问题了。
原文链接:Docker 基础:简单入门使用 docker

本作品采用《CC 协议》,转载必须注明作者和本文链接
写的不好,就当是整理下思绪吧。
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 7

可以 可以 有些平台把 docker 讲的太复杂了 十几个小时的视频 其实大部分都用不上

8个月前 评论
一句话儿 (楼主) 8个月前
QIN秦同学 8个月前
PHP布道者 (作者) 8个月前

删除镜像的是 docker rmi 命令
删除容器的是 docker rm 命令
docker inspect 可以查看镜像,容器的详情

8个月前 评论
一句话儿 (楼主) 8个月前