1. Docker介绍
docker可以让开发者打包他们的应用以及依赖包到一个可移植的容器,然后发布在任何一个Linux版本上;
build ,run ,ship any APP ,anywhere
2. docker构造
需要理解以下三种部件:
docker镜像——docker image
docker仓库——docker repository
docker 容器——docker container
镜像:
镜像是docker运行时的已读模板;镜像是Docker容器的基石,镜像包含了运行环境和配置,容器是镜像的运行实例,有了镜像才能启动容器。
base镜像----提供了一个基本的操作系统环境,用户可以根据需要安装和配置软件
base镜像通常是各种Linux发行版的Docker镜像比如ubuntu、Debian、centos等。
仓库:
仓库用来保存镜像,可以理解为代码控制中的代码仓库。Docker仓库也有公有和私有的概念,我觉得和yum源有点类似;
容器:
Docker容器和文件夹很类似,一个docker容器包含了某个应用运行所需要的所有环境。每一个docker容器都是从docker镜像创建的,docker容器可以运行、开始、停止、移动、删除。每一个docker容器都是独立和安全的应用平台。
容器与镜像的关系类似于面向对象编程中的对象与类;
镜像地址
- Docker 官方中国区
https://registry.docker-cn.com
- 网易
- ustc
https://docker.mirrors.ustc.edu.cn
- docker官方镜像仓库
https://hub.docker.com/explore/
- daocloud
https://www.daocloud.io/mirror#accelerator-doc(注册后使用)
3. Linux
3.1 Docker离线安装
参考资料:Centos 环境Docker离线安装方式
https://blog.csdn.net/h363659487/article/details/77159306
其中,docker-ce的离线包安装地址改为:
https://download.docker.com/linux/centos/7/x86_64/stable/Packages/
3.2 在线安装docker
参考资料:
3.3 Docker 修改镜像源地址
参考资料:https://www.jianshu.com/p/df75f9b5fcf6
下载镜像,可以先去https://hub.docker.com/explore/查看相关应用的版本,再去拉取镜像
3.4 曲折式获取镜像
设置镜像源后,获取镜像,显示超时,死活不能拉取。最后在Windows安装docker,拉取镜像,再将镜像导出为tar包,传送到对应服务器
3.5 Docker卸载
列出你安装过的包
$ yum list installed | grep docker
docker-engine.x86_64
1.7.1-1.el7 @/docker-engine-1.7.1-1.el7.x86_64.rpm
删除安装包
$ sudo yum -y remove docker-engine.x86_64
删除镜像/容器等
$ rm -rf /var/lib/docker
4. Windows
4.1 Docker 安装
Docker是基于linux内核运行的,在Windows上搭建docker,实际上是先在Windows系统上搭建linux虚拟机,再搭建docker;
win7、win8 等需要利用 docker toolbox 来安装(NO Hyper-V),win10需要利用Docker for Windows安装(需要开启 Hyper-V);
如果电脑之前安装了Git,会有点错误。需要修改docker调用的Git安装地址
安装参考资料:http://www.runoob.com/docker/windows-docker-install.html
docker-toolbox下载链接:http://mirrors.aliyun.com/docker-toolbox/windows/docker-toolbox/
4.2 Windows Docker的镜像加速
参考资料:
Docker Toolbox:https://www.cnblogs.com/studyzy/p/6113221.html
Docker Toolbox & Docker for Windows:
https://blog.csdn.net/wangdandong/article/details/68958210
docker命令中的/bin/bash
例docker run -it tomcat /bin/bash
中的/bin/bash的作用是因为docker后台必须运行一个进程,否则后台会退出,在这里启动容器后启动bash
5. 参考资料
联网安装docker:https://blog.csdn.net/qq_34912469/article/details/77337122
一些重要的docker命令的简单介绍:https://linux.cn/article-5446-1.html