Docker简介

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

系统结构

Docker采用 C/S架构 Docker daemon 作为服务端接受来自客户的请求,并处理这些请求(创建、运行、分发容器)。 客户端和服务端既可以运行在一个机器上,也可通过 socket 或者RESTful API 来进行通信。
Docker daemon 一般在宿主主机后台运行,等待接收来自客户端的消息。 Docker 客户端则为用户提供一系列可执行命令,用户用这些命令实现跟 Docker daemon 交互。

Docker通用场景

  • web应用的自动化打包和发布;
  • 自动化测试和持续集成、发布;
  • 在服务型环境中部署和调整数据库或其他的后台应用;
  • 从头编译或者扩展现有的OpenShift或Cloud Foundry平台来搭建自己的PaaS环境。

Docker安装

系统要求:

内核大于:3.10

部署Docker

  • 使用https方法安装CA证书

sudo apt-get update
sudo
apt-getinstall apt-transport-https ca-certificates

  • 添加新的GPG密钥

sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80
--recv-keys58118E89F3A912897C070ADBF76221572C52609D

  • 删除/etc/apt/sources.list.d/docker.list文件中的内容,修改为:

deb https://apt.dockerproject.org/repo
ubuntu-trusty main

  • 安装依赖软件包

sudo apt-get update
sudo
apt-get purgelxc-docker

sudo
apt-cachepolicydocker-engine

sudo
apt-get installlinux-image-extra-$(uname -r) linux-image-extra-virtual

  • 安装Docker

sudo apt-get install docker-engine

  • 启动Docker守护进程

sudo service docker start

  • 查看Docker信息

sudo docker info

Docker的使用

我们需要先下载一个原始镜像,原始镜像一般为linxu内核精简版,很多命令都不支持。需要自行安装。

查找Docker ubuntu镜像

sudo docker search ubuntu

下载ubuntu 镜像至本地

sudo docker pull ubuntu

查看本地的镜像

sudo docker images

使用ubuntu镜像运行一个容器

sudo docker run -it ubuntu /bin/bash

我们发现这个ubuntu容器不支持vim。

在容器中安装vim工具

退出容器,提交更改

docker ps -l #查看当前运行的容器
docker commit 21e6 ubuntu-vim #提交容器更改,保存镜像名为:ubuntu-vim

再次查看本地Docker镜像

sudo docker images

已经存在了刚才提交的:ubuntu-vim镜像

使用ubuntu-vim运行容器

发现提交的更改已经生效。已经存在vim命令。

  

部分Docker常用命令

  1. docker卸载:sudo apt-get purge docker-engine
  2. docker升级:sudo apt-get upgrade docker-engine
  3. 查看本地镜像:docker images
  4. 查看docker版本:docker version
  5. 查找镜像:docker search tutorial
  6. 下载镜像:docker pull ubuntu
  7. docker中运行helloworld:docker run ubuntu echo "hello word"
  8. 保存对容器的修改:docker commit 698 ubuntu
  9. 发布镜像:docker push ubuntu
  10. 为镜像打上tag:docker tag test:latest s101070791/test:latest
  11. 删除镜像:docker rmi imageName
  12. 保存镜像到本地:docker save -o centOS.tar centos
  13. 加载本地镜像:docker load --input centOS.tar
  14. 停止容器:docker stop 707c
  15. 打开ssh通道:docker run -p 10022:22 -d sshd1:ubuntu /run.sh

Docker相关网站:

https://docs.docker.com/

ubuntu14 安装和使用docker的更多相关文章

  1. 在Ubuntu 14.04安装和使用Docker

    Docker是一个开源软件,它可以把一个Linux应用和它所依赖的一切(比如配置文件)都封装到一个容器.然而,Docker与虚拟机不同,它使用了沙箱机制,Docker容器不运行操作系统,它共享主机上的 ...

  2. [转]在Ubuntu 14.04安装和使用Docker

    在Ubuntu 14.04安装和使用Docker 作者:chszs,版权所有,未经同意,不得转载.博主主页:http://blog.csdn.net/chszs Docker是一个开源软件,它可以把一 ...

  3. 如何在Debian 9上安装和使用Docker

    介绍 Docker是一个简化容器中应用程序进程管理过程的应用程序.容器允许您在资源隔离的进程中运行应用程序.它们与虚拟机类似,但容器更便携,更加资源友好,并且更依赖于主机操作系统. 在本教程中,您将在 ...

  4. ubuntu上安装及使用docker

    关于Docker: Docker 是一个开源项目,为开发者和系统管理员提供了一个开放的平台,在任何地方通过打包和运行应用程序作为一个轻量级的容器.Docker 在软件容器内自动部署应用程序.Docke ...

  5. Centos7的安装、Docker1.12.3的安装,以及Docker Swarm集群的简单实例

    目录 [TOC] 1.环境准备 ​ 本文中的案例会有四台机器,他们的Host和IP地址如下 c1 -> 10.0.0.31 c2 -> 10.0.0.32 c3 -> 10.0.0. ...

  6. Centos6.5安装和使用docker

    rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm yum install docke ...

  7. ubuntu16.04安装最新版docker、docker-compose、docker-machine

    安装前说明: 本文将介绍在ubuntu16.04系统下安装和升级docker.docker-compose.docker-machine. docker:有两个版本:docker-ce(社区版)和do ...

  8. Centos7下安装与卸载docker应用容器引擎

    Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源. Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到任何流行的 Li ...

  9. Docker的安装和使用说明——Docker for Windows

    一.Docker安装 1.1官方方法 官方下载页面:http://www.docker.com/products/docker#/windows 官方下载地址:https://download.doc ...

随机推荐

  1. C#中静态成员和实例变量

    昨天晚上看静态成员和实例变量的时候,看到这样的一句话:默认情况下,若成员被定义为实例变量,这就意味着类需要为每个实例都建立一个副本,而在定义一个静态变量的时候,只存在此成员的一个副本. 呵呵,今天跟前 ...

  2. package.json相关疑惑总结

    语义版本控制(node-semver) X.Y.Z,主要版本X,次要版本Y,补丁Z X:代表一个破坏兼容性的大变化: Y:表示不会破坏任何内容的新功能: Z:表示不会破坏任何内容的错误修复: pack ...

  3. 【TensorFlow入门完全指南】神经网络篇·循环神经网络(RNN)

    第一步仍然是导入库和数据集. ''' To classify images using a reccurent neural network, we consider every image row ...

  4. windows10下安装TensorFlow Object Detection API

    由于官方的文件都是在乌班图和mac系统下的,就上网搜了以下. 按照下边这个博客安装成功了 https://blog.csdn.net/qq_28019591/article/details/82023 ...

  5. ThinkPHP笔记——开启debug调试模式

    debug+trace模式可以查看开发过程中TP的错误信息,可以更好地帮助开发者debug.但是debug模式的开启还不是简单的在配置文件中中设置就可以的,经过查资料摸索,找到一种有效的方法. 首先在 ...

  6. .net代码获取节点以及读取属性

    获取配置文件的节点,可以使用System.Configuration.ConfigurationManager.GetSection方法获取指定的节点,以sessionstate节点为例,如果需要获取 ...

  7. 基于GPS\北斗、GIS、GPRS技术构建智能巡检系统

    巡线工负责输油管网设施的日常巡查,可以及时发现管网设施是否完好.但巡检工作辛苦,加之管线在大部分情况下又处于良好状态,使得巡检人员麻痹大意,往往不能按规定程序进行巡检,造成巡检不到位,这样就不能从根本 ...

  8. 解决 cocos2dx iOS/mac 设置纹理寻址模式后纹理变黑的问题

    sprite:getTexture():setTexParameters(gl.LINEAR,gl.LINEAR,gl.REPEAT,gl.REPEAT) 在安卓设备上,设置了纹理自定义寻址模式,纹理 ...

  9. NOIP模拟赛 不等数列

    [题目描述] 将1到n任意排列,然后在排列的每两个数之间根据他们的大小关系插入“>”和“<”.问在所有排列中,有多少个排列恰好有k个“<”.答案对2012取模. [输入格式] 第一行 ...

  10. 初涉斯坦纳树&&bzoj4774: 修路

    斯坦纳树的基础应用 斯坦纳树有什么用 个人一点粗浅理解…… 最基本形式的斯坦纳树问题(以下简称母问题):给定图G和一个关键点集V.求在G中选取一个权值最小(这里权值可以有很多变式)的边集E使V中的点两 ...