Docker学习笔记(一) 返回首页

发表于 2020-01-30 | 本文共 211 字

Docker学习笔记(一)

什么是Docker

 Docker实际上是一个虚拟机,

Docker的相关概念

镜像

 镜像就类似我们用创建虚拟机之前需要下载的系统镜像文件,比如iso文件,img文件等等镜像文件

容器

 容器可以类比正在运行中的一个虚拟机

tar文件

 tar文件类似于vm使用时的vmdk文件,它可以将一个镜像保存成一个tar文件,可以通过load指令将这个tar文件重新加载成一个镜像,然后再通过run指令就启动了一个正在运行的虚拟机了(容器)

dockerfile

 dockerfile是个很短的配置文件,通过写“如何构建”的步骤,来指定一个镜像是如何构建的,通过docker build指令可以将dockerfile构建成一个镜像

仓库

 Docker有一个特别厉害的远程仓库,保存了很多镜像,包括一个公有的第三方已经做好的镜像,比如ubuntu镜像,MySQL镜像,Tomcat镜像等等;我们可以通过Docker pull指令下载这些镜像到本地,也可以把自己的镜像通过push指令上传上去

安装

 不同的系统安装方式有差异,可以使用Play with Docker工具在线使用: Play with Docker 注册登陆后,创建ssh实例,就可以使用Docker了(每次使用有时间限制) 一些指令:

docker pull nginx//安装nginx镜像

docker pull nginx:latest//上面指令的完整版

docker images//查看当前实例的已安装镜像

docker run nginx//运行nginx,但是只是简单运行起来一个服务器

docker run -d -p 80:80 nginx//-d:后台运行,不阻塞shell指令窗口,-p:指定内外端口映射,将内部80端口和外部80端口做一个简单的映射;运行起来后,控制台打印的遗传字符是这个容器的id;可以通过指定不同的端口,启动多个服务器

docker ps//查看正在运行的容器有哪些

docker exec -it xxx bash//进入某个容器的服务器,xxx是容器的id,不需要全写,能唯一标识即可

exit//退出容器

docker rm -f xxx//强制删除某个容器,xxx表示id,可以不全写

docker commit xxx m1//xxx表示id,m1是名字,将某个镜像提交,保存该镜像当前的状态

vim Dockerfile//创建并编辑Docker File文件

docker build -t m2 .//指定当前目录下的Dockerfile去构建

docker run -d -p 100:80 m2//运行

docker save m2 >1.tar //将某个镜像存储到tar文件中

docker load < 1.tar //读取tar文件

Bilibili视频链接


如果你觉得本文对你有帮助,不妨请我喝杯咖啡