一、Docker简介
Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。
Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上。
容器是完全使用沙箱机制,相互之间不会有任何接口,更重要的是容器性能开销极低。
Docker 从 17.03 版本之后分为 CE(Community Edition: 社区版) 和 EE(Enterprise Edition: 企业版)。
Docker 官网:https://www.docker.com
Github Docker 源码:https://github.com/docker/docker-ce
Docker的三大核心: 镜像、容器、仓库
Docker 使用客户端-服务器 (C/S) 架构模式,使用远程API来管理和创建Docker容器。
二、镜像
仓库查找镜像:docker search centos
下载镜像 : docker [image] pull NAME[:TAG] 从docker hub 下载镜像,如:docker pull ubuntu:18.04,如果不显式指定
下AG,则默认会选择latest标签,这会下载仓库中最新版本的镜像。
列出镜像:docker images
添加标签:docker tag ubuntu:latest myuu:latest 标签类似别名
删除标签:docker rmi myuu:latest 多个标签时删除标签,只有一个时,会删除这个镜像文件
按ID删除镜像: docker rmi ID
清理镜像: docker image prune -f
基于dockerfile 创建镜像: https://blog.csdn.net/yunxing323/article/details/109670891
上传镜像:docker [image] push NAME[:TAG] 或 [仓库HOST:PORT]/NAME[:TAG]
第一次上传时,会提示输入登录信息或进行注册,之后登录信息会记录到本地~/.docker目录下。
docker hub 公共镜像仓库: https://hub.docker.com
三、容器操作
新建容器:docker create -it ubuntu:latest
查看本机上存在的容器: docker ps -a
启动刚创建的容器:docker [container] start
查看 docker 输出 docker [container] logs ,如: docker logs ce553534343a4
终止容器: docker stop ce5 , 重启 docker restart ce5
查看容器端口映射: docker container port test
四、搭建本地私有仓库
使用registry镜像创建私有仓库安装Docker后,可以通过官方提供的registry镜像来简单搭建一套本坦呀么有仓库环境:
$docker run -d -p 5000:5000 registry:2
这将自动下载并启动一个registry容器,创建本地的私有仓库服务。默认情况下,仓库会被创建在容器的八a r/lib/registry目录下。
可以通过-v参数剩容镜像文件存放在本地的指定路径。
五、docker 数据管理
容器中的管理数据主要有两种方式:
1. 数据卷(Data Volumes):容器内数据直接映射到本地主机环境;
2. 数据卷容器(Data VOIumeContainers):使用特定容器维护数据卷。
六、映射到指定地址的指定端口
可以使用IP:HostPort:ContainerPort格式指定映射使用一个特定地址,比如
$docker run -d -p 127.0.0.1:5000:5000 training/webapp python app.py
七、docker 相关工具
docker管理工具:谷歌Kubernetes、Apache的Mesos、Docker Swarm
Rancher2.x 可以通过可视化界面安装docker的管理工具。