Docker 基础与实战,看这一篇就够了


Docker 基础与实战,看这一篇就够了

文章插图
作者 | 单一色调
责编 | Elle
Docker 基础
 
什么是DockerDocker 使用 google 公司推出的 Go 语言 进行开发实现 , 基于 linux 内核的 cgroup , namespace , 以及 AUFS 类的 Union FS 等技术 , 对进程进行封装隔离 , 属于 操作系统层面的虚拟化技术 。由于隔离的进程独立于宿主和其它的隔离的进程 , 因此也称其为容器 。
Docker 在容器的基础上 , 进行了进一步的封装 , 从文件系统、网络互联到进程隔离等等 , 极大的简化了容器的创建和维护 。使得 Docker 技术比虚拟机技术更为轻便、快捷 。
记住最重要的一点 , Dokcer实际是宿主机的一个普通的进程 , 这也是Dokcer与传统虚拟化技术的最大不同 。
 
为什么要使用Docker使用Docker最重要的一点就是Docker能保证运行环境的一致性 , 不会出现开发、测试、生产由于环境配置不一致导致的各种问题 , 一次配置多次运行 。使用Docker , 可更快地打包、测试以及部署应用程序 , 并可减少从编写到部署运行代码的周期 。
 
Docker 安装Docker 要求 centos 系统的内核版本高于 3.10  , 查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker。uname -r
Docker 基础与实战,看这一篇就够了

文章插图
更新yum,升级到最新版本yum update
卸载老版本的docker(若有)yum remove docker docker-common docker-selinux docker-engine执行该命令只会卸载Docker本身 , 而不会删除Docker存储的文件 , 例如镜像、容器、卷以及网络文件等 。这些文件保存在/var/lib/docker 目录中 , 需要手动删除 。
查看yum仓库 , 查看是否有dockerll /etc/yum.repos.d/
Docker 基础与实战,看这一篇就够了

文章插图
如果用的厂商的服务器(阿里云、腾讯云)一般都会有docker仓库 , 如果用的是虚拟机或者公司的服务器基本会没有 。
安装软件包, yum-util 提供yum-config-manager功能 , 另外两个是devicemApper驱动依赖的yum install -y yum-utils device-mapper-persistent-data lvm2
安装仓库yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
Docker 基础与实战,看这一篇就够了

文章插图
查看docker版本yum list docker-ce --showduplicates | sort -r
Docker 基础与实战,看这一篇就够了

文章插图
安装dockeryum install docker-ce以上命令是是安装最新版本的Docker , 你也可以通过yum install docker-ce-<VERSION> 安装指定版本
启动dockersystemctl start docker
验证安装是否正确dokcer run hello-world
Docker 基础与实战,看这一篇就够了

文章插图
 
Docker 重要命令 
镜像相关搜索镜像Docker search如Docker search Nginx Docker就会在Docker Hub中搜索含有“nginx”这个关键词的镜像仓库
Docker 基础与实战,看这一篇就够了

文章插图
下载镜像Docker pull如docker pull nginx Docker就会在Docker Hub中下载含有“nginx”最新版本的镜像当然也可以使用Docker pull reg.jianzh5.com/nginx:1.7.9 下载指定仓库地址标签的nginx镜像
列出镜像Docker images
Docker 基础与实战,看这一篇就够了

文章插图
删除镜像Docker rmi如Docker rmi hello-world删除我们刚刚下载的hello-world镜像
构建镜像Docker build通过Dockerfile构建镜像 , 这个我们等下再拿出来详细说明 。
 
容器相关新建启动镜像Docker run
这个命令是我们最常用的命令 , 主要使用以下几个选项
① -d选项:表示后台运行
② -P选项(大写):随机端口映射
③ -p选项(小写):指定端口映射,前面是宿主机端口后面是容器端口 , 如docker run nginx -p 8080:80 , 将容器的80端口映射到宿主机的8080端口 , 然后使用localhost:8080就可以查看容器中nginx的欢迎页了
④ -v选项:挂载宿主机目录 , 前面是宿主机目录 , 后面是容器目录,如docker run -d -p 80:80 -v /dockerData/nginx/conf/nginx.conf:/etc/nginx/nginx.conf nginx 挂载宿主机的/dockerData/nginx/conf/nginx.conf的文件 , 这样就可以在宿主机对nginx进行参数配置了,注意目录需要用绝对路径 , 不要使用相对路径 , 如果宿主机目录不存在则会自动创建 。


推荐阅读