Docker 手记

    在网上找的一篇 非常详细的Docker笔记

    

1.什么是Docker?

比较喜欢Docker老版本官网的经典又直白的介绍及其Slogan:

"Docker - Build, Ship, and Run Any App, Anywhere"

Docker是一个开源的引擎,可以为任何应用创建一个轻量级的,可以移植的,自给自足的容器。

开发者在笔记本上测试通过的容器可以批量的在生产环境中部署,包括VMs(虚拟机)、bare metal、OpenStark集群和其它的基础应用平台;

系统架构

总体架构图

搞软件开发的人喜欢研究系统架构,下图为Docker的总体架构图:

优势:

启动速度快,通常小于1秒

资源利用率高,一个PC可以跑上千个容器

性能开销小

面向软件开发者而非硬件运维

轻便,移植性高

Docker基于LXC的改进

提供了简洁易用的命令行和API

使用Go语言开发,吸引开源社区关注

基于联合文件系统的镜像分层技术,加上在线Docker Hub服务,容器迁移方便快捷

一个容器只包含一个进程的微服务架构

2.Docker的应用场景

web应用的自动化打包和发布;

自动化测试和持续集成、发布;

在服务型环境中部署和调整数据库或其他的后台应用;

从头编译或者扩展现有的OpenShift或Cloud Foundry平台来搭建自己的PaaS环境;

3.准备

Docker系统有两个程序:docker服务端和docker客户端;

docker服务端是一个服务进程,管理着所有的容器;

docker客户端扮演着docker服务端的远程控制器,可以用来控制docker的服务端进程;

大部分情况下,docker服务端和docker客户端运行在同一台机器上;

4.检查docker版本

用来确认docker服务在运行并可通过客户端连接;

在终端输入docker命令查看所有的参数;

正确命令:docker version 查看docker版本 windows

5.搜索docker可用镜像

命令:docker search 镜像名称;

docker search CentOS

docker search ubuntu

6.使用docker下载镜像

docker pull 镜像名称

7.在docker容器中运行Hello world

docker run 镜像名称 echo "Hello world"

8.在容器中安装新的应用程序

在ubuntu中安装ping程序:通过ubuntu的apt-get install -y ping;

learn/tutorial 是基于 ubuntu的;

在使用apt-get命令的时候,要带上-y参数,如果不指定-y参数,apt-get命令会进入交互模式,需要用户输入命令来进行确认,但是在docker中是无法响应这种交互的;

docker run 镜像名称 apt-get install -y ping

9.保存对容器的修改

通过 docker ps -l 获得安装完ping命令之后的容器的id;

然后运行docker commit查看该命令的参数;



猜你喜欢

转载自blog.csdn.net/qq_41191024/article/details/80199889