Docker 是一个开源的应用容器引擎
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的Linux或Windows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。安装Dockercentos7为例#安装需要的软件包 :yum install -y yum-utils device-mapper-persistent-data lvm2...
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的Linux或Windows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
安装Docker
-
centos7为例
-
#安装需要的软件包 :yum install -y yum-utils device-mapper-persistent-data lvm2
-
#设置yum源 :yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
-
#安装docker:sudo yum install docker
-
#启动docker并让它随系统自启
-
sudo service docker start
-
sudo chkconfig docker on
组成部分
Docker Client(客户端)
- docker客户端是用户与docker进行交互的主要方式,当在终端输入docker命令时,对应的就会在服务端产生对应的作用,并返回结果给客户端。
Docker Server (服务端)
- docker daemon就是docker的服务端,它负责监听docker api的请求并管理docker对象,如镜像、容器、网络、数据卷等
Docker Registries
- 俗称docker仓库,专门用于储存镜像的云服务环境,docker hub就是一个公有的存放镜像的地方,类似GitHub储存代码文件。
Docker Objects (对象):
- 镜像:一个docker的可执行文件,其中包括运行应用程序所需的所有代码内容、依赖库、环境变量和配置文件
- 容器:镜像被运行起来后的实例
- 网络:外部或者容器间如何互相访问的网络方式,如host模式、bridge模式等
- 数据卷:容器与宿主机之间、容器与容器之间共享存储方式,类似虚拟机与主机之间的共享文件目录
docker基本使用
常用命令
-
docker环境信息 -> info、version
-
镜像管理 -> build、images、import、load、rmi、save、tag、commit
-
容器运维操作 -> attach、export、inspect、port、ps、rename、stats、top、wait、cp、diff、update
-
容器生命周期 start、stop、restart、pause、rm、run、unpause、kill、create
-
镜像仓库命令 -> login、logout、pull、push、search
查看API文档
docker <management Commands> --help
搜索需要的镜像
下载镜像到docker本地服务器中
-
配置国内镜像源,提高拉取速度
-
echo {"registry-mirrors": ["http://hub-mirror.c.163.com"]} > /etc/docker/daemon.json
-
下载centos镜像
-
docker pull centos
docker的简单使用
显示下载镜像
测试创建容器
开启容器,运行一个后台终端
-
docker run -itd centos /bin/bash
-
#options解释
-
-i -> Allocate a pseudo-TTY
-
-t -> Keep STDIN open even if not attached
-
-d -> Run container in background and print container ID
注意:容器之间是互不干扰的
通过容器的修改文件,生成一个新的镜像
提交到docker hub,线上保存
-
docker login -u username -p password
-
docker commit image
对于docker用处和作用,目前个人知道的有两个,一是做集群处理,另一个就是创建自己的独立开发环境容器,随时可以用。
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)