学习docker的初衷,公司对安装的软件需要做镜像,方便第三方公司简单实用,以前也没搞过docker,只是听说docker的概念,没具体深入看,借这个机会学习docker的使用,在过程中,也走了不少弯路,主要还是对docker的理念不理解导致的,下面是一个简单入门,具体的原理还得深入研究
Docker的感念
Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。
Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。
容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。
Docker 从 17.03 版本之后分为 CE(Community Edition: 社区版) 和 EE(Enterprise Edition: 企业版),我们用社区版就可以了。
Docker的使用
docker的安装
docker的安装不同的平台安装有差异,可以参考这个安装教程
docker使用
- 拉取镜像
docker pull [OPTIONS] NAME:TAG
例如: 拉取centos镜像 docker pull centos:7.2.1511 如果不写tag ,拉取的就是最新的镜像 -
查看镜像
docker images
- 运行镜像
docker run 创建一个新的容器并运行一个命令
例如:docker run -itd --name sys_rw -p 7727:7727 -p 7724:7724 -p 7725:7725 -p 7726:7726 -p 9090:9090 --privileged=true sys_rw:1.0 /usr/sbin - 进入镜像
docker exec -it [创建的容器的名称] /bin/bash
例如:docker -it sys_rw /bin/bash - 查看容器
docker ps -a - 导出镜像
docker export
例如:docker exoport -o xxx.tar [容器id] - 导入镜像
docker import [OPTIONS] file|URL|- [REPOSITORY[:TAG]]
例如:docker import xx.tar kb:1.0
docker的命令参考链接