zoukankan      html  css  js  c++  java
  • Azure支持docker简介以及使用指南

    Docker 是一个开源的项目,主要的特点是能将应用程序包装在一个 LXC (Linux Container) 容器中,当这些应用被包装进容器后,部署、迁移都变得更为简单。与传统的虚拟化技术相比,虚拟机需要安装操作系统才能执行应用程序,而 Container 则不需要安装操作系统就能运行应用程序。Container 技术是一种在 操作系统内的 Kernel 层所打造虚拟运行环境,所以 Container 彼此之间共享了 Host OS 的 Kernel,但通过namespace 区分来达到隔离每个容器的目的。

    微软与Docker公司建立了新的合作伙伴关系,宣布推出Azure市场上的第一个Docker镜像,以便在Windows Server上增加对Docker工具的支持。因其业务计算能力,Docker风靡云世界,很大程度上是由于 它的轻量的、容器化的虚拟应用的方法,这让企业可以跳过每个VM要求的操作系统。

    “用户现在可以更轻松地选择Docker库中的项目,同时用户还可获得一个具有最有Docker引擎的 Azure Ubuntu VM且可以意即使用,”微软还将为Docker生态系统带来Windows Server容器。作为这项工作的一部分,用于Windows Server容器的Docker引擎将在Docker开源项目的支持下进行开发,微软将以社区成员的身份参与。Windows Server容器镜像将在Docker Hub上和其它Linux Docker镜像一起提供。

    微软与Docker的合作是强强联合,在各自的领域中两个公司都是行业翘楚。Windows Server是企业级的应用系统,Docker的容器技术已经日趋炉火纯青。不难预见,Azure云的Docker之路将会给应用创新的商业市场中带来巨大变革,带动整个产业竞争力的提高。


    在 Azure 上建立 Docker Host

    Docker 可以运行在 Linux 操作系统之下,所以如果要在 Azure 上使用 Docker,您也可以自行建立一个Linux VM,并在上面安装 并运行Docker Deamon 。而微软在正式宣布与 Docker 密切合作后,推出了对 Docker 的直接支持,CentOS 7 中 Docker 的安装

    Docker 软件包已经包括在默认的 CentOS-Extras 软件源里。因此想要安装 docker,只需要运行下面的 yum 命令:

    [root@Mono ~]# yum install docker

    启动 Docker 服务

    [root@ Mono ~]# systemctl start docker.service

    [root@ Mono ~]# systemctl enable docker.service

    下载官方的 CentOS 镜像到本地

    [root@Mono ~]# docker pull centos

    centos:latest: The image you are pulling has been verified

    511136ea3c5a: Pull complete

    5b12ef8fd570: Pull complete

    34943839435d: Pull complete

    Status: Downloaded newer image for centos:latest

    确认 CentOS 镜像已经被获取:

    [root@Mono ~]# docker images centos

    REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE

    centos latest 34943839435d 13 days ago 224 MB

    运行一个 Docker 容器:

    [root@Mono ~]# docker run -i -t centos /bin/bash

    [root@5d841f64f6f0 /]# ls /etc

    BUILDTIME group nsswitch.conf rpm

    DIR_COLORS group- openldap sasl2

    DIR_COLORS.256color gshadow opt securetty

    DIR_COLORS.lightbgcolor gshadow- os-release security

    GREP_COLORS gss pam.d selinux

    X11 host.conf passwd services

    aliases hostname passwd- shadow

    alternatives hosts pkcs11 shadow-

    bash_completion.d hosts.allow pki shells

    bashrc hosts.deny pm skel

    binfmt.d init.d popt.d ssl

    centos-release inputrc prelink.conf.d sysconfig

    chkconfig.d iproute2 printcap sysctl.d

    cron.daily issue profile system-release

    cron.hourly issue.net profile.d system-release-cpe

    csh.cshrc krb5.conf protocols systemd

    csh.login ld.so.conf rc.d terminfo

    dbus-1 ld.so.conf.d rc0.d tmpfiles.d

    default libaudit.conf rc1.d udev

    dracut.conf.d libuser.conf rc2.d virc

    environment localtime rc3.d xdg

    exports login.defs rc4.d xinetd.d

    filesystems logrotate.d rc5.d yum

    fstab magic rc6.d yum.conf

    gcrypt modules-load.d redhat-release yum.repos.d

    gnupg motd resolv.conf

    groff mtab rpc

    我们可以看到,CentOS 容器已经被启动,并且我们得到了 bash 提示符。在 docker 命令中我们使用了 "-i 捕获标准输入输出"和 "-t 分配一个终端或控制台"选项。若要断开与容器的连接,输入 exit。

    [root@5d841f64f6f0 /]# exit

    Exit

    我们还可以搜索基于 mono的容器。 发现已经有非常多的mono容器,我们开始玩docker mono。

    [root@Mono ~]# docker search mono

    NAME DESCRIPTION STARS OFFICIAL AUTOMATED

    mono Mono is an open source implementation of M... 24 [OK]

    akoeplinger/mono-aspnetvnext Image containing everything needed to play... 14 [OK]

    monokrome/wine 4 [OK]

    monokrome/node 3 [OK]

    friism/mono 2 [OK]

    benhall/docker-mono Docker file at https://github.com/Ben Hall/... 2

    devdiv/ubuntu-mono 1

    nacyot/fsharp-mono 1 [OK]

    caseyjbenko/docker-mono 1 [OK]

    nacyot/csharp-mono 1 [OK]

    rexm/mono-docker 1 [OK]

    prozachj/docker-mono-aspnetvnext 1 [OK]

    clarktlaugh/mono 0 [OK]

    marcells/mono 0 [OK]

    seif/docker-mono-fastcgi-nginx 0 [OK]

    fghedin/docker-mono 0 [OK]

    shaunol/mono-owin-webapi 0 [OK]

    seif/mono-runit 0 [OK]

    timefairy/debian-mono 0 [OK]

    shaunol/learning-mono 0 [OK]

    rmacdonaldsmith/docker-debian-mono-devel 0 [OK]

    misakai/mono Mono and LLVM on Debian 0

    bryanayers/centos7-mono-snapshot 0 [OK]

    fghedin/docker-mono-hello 0 [OK]

    acazau/docker-mono 0 [OK]

    andmos/mono Baseimage for Mono-runtime. 0

    eflab/mono 0

    jbonhag/mono-hosting-wcf 0 [OK]

    thachmai/mono-complete 0 [OK]

    andrefernandes/docker-mono 0 [OK]

    mikehadlow/ubuntu-monoxide-mono-devel 0 [OK]

    allunite/mono-base Ubuntu with Mono base image 0

    wimperdt/mono-in-docker 0 [OK]

    ahmet/docker-mono-build 0 [OK]

    pmcgrath/mono 0

    allunite/buildimage-mono Drone.io build image for mono apps 0

    tomrijntjes/monoculture 0 [OK]

    pjvds/mono 0

    basecrm/mono 0

    monokrome/btsync 0 [OK]

    basespace/mono 0

    robzhu/mono 0

    monokrome/zmq 0 [OK]

    bowery/mono 0

    wbonner/unity-mono 0

    wayneo/mono 0

    rwentzel/ubuntu-mono Ubuntu 13.04 with Mono 3.2.3 0

    scottrudy/mono 0

    haaf/mono-baseline A Mono 3.8 baseline with F# installed . So... 0

    monokrome/minecraft 0 [OK]

    bryanayers/centos7-mono3.10.0 0 [OK]

    tilde/mono 0

    junsuzuki/mono 0

    virkokka/mono-fsharp Ubuntu 14.04 with mono and F# 0

    pcherng/phasingapp-mono-dev 0

    bryanayers/centos7-mono3.8.0 0 [OK]

    monokrome/gitreceive 0 [OK]

    kolektiv/mono 0

    octohost/mono 0

    leptonix/mono 0

    monokrome/azure-cli 0 [OK]

    monokrome/renderize 0 [OK]

    monokrome/gitolite 0 [OK]

    paulbrennan/mono 0

    monokrome/sshd 0 [OK]

    basespace/centos-mono 0

    monokrome/nibbler 0 [OK]

    saltosystems/mono-xsp4-app 0

    clintonalee/centos6-mono 0

    endeavour/nginx-mono 0

    monokrome/chat 0 [OK]

    armbuild/crosbymichael-mono 0

    jpina/centos-mono 0

    bjornno/mono-phonebook 0

    pcherng/jellyfish-mono 0

    petee/centos-mono 0

    menziesbenwiles/test-mono 0

    nyasara/azurepymono A base ubuntu image with Mono, Azure SDK f... 0 [OK]

    allanlei/mono-fastcgi-server2 0

    petee/centos-mono-2.10.2 0

    nyasara/monobase Adds Azure SDK and IronPython to a mo no image 0

    hack13/mono310 opensuse mono 3.10 0

    originalsurfmex/monode development sandbox (uses 8080): node , exp... 0

    jgarverick/monocent Linux image with Mono framework pre-i nstalled 0

    pgrm/mono_baseimage 0

    pcherng/puma00-14-07-09-mono 0

    jgarverick/monodeb 0

    azraelrabbit/monup mono opt for jexus web server 0 [OK]

    afilimonov/hcci-solr 0 [OK]

    afilimonov/docker-solr 0 [OK]

    fireantik/fireantmonodocker 0 [OK]

    monolive/centos 0

    monofraps/centos65-base 0

    callumelgrant/docker-mono-aspnetvnext 0 [OK]

    seif/mono Debian based mono container using xam arin ... 0 [OK]

    smartprocure/mono 0 [OK]

    jamesottaway/mono Mono is an open source implementation of M... 0 [OK]

    cuda/mono Mono latest release container based o n Ubu... 0 [OK]

    crosbymichael/mono 0 [OK]

    derekslager/mono 0 [OK]

    shaunol/centos-mono 0 [OK]

    matsprea/mono-aspnetvnext Repository with MONO and the Asp.Net vnext... 0 [OK]

    djsell/mono 0 [OK]

    andystanton/exec-mono 0 [OK]

    ndelitski/mono 0 [OK]

    [root@Mono ~]#

    下载Mono的 docker镜像

    [root@Mono ~]# docker pull mono

    mono:latest: The image you are pulling has been verified

    f10807909bc5: Pull complete

    f6fab3b798be: Pull complete

    3c43ebb7883b: Pull complete

    7a1f8e485667: Pull complete

    a342319da8ea: Pull complete

    3774d7ea06a6: Pull complete

    9da8fc8d2ff5: Pull complete

    511136ea3c5a: Already exists

    Status: Downloaded newer image for mono:latest

    [root@Mono ~]#

    使用docker运行mono

    [root@Mono ~]# docker run -i -t mono bash

    )

    root@66f9d4b4c73b:/# mono -V

    Mono JIT compiler version 3.10.0 (tarball Wed Nov 5 12:50:04 UTC 2014)

    Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com

    TLS: __thread

    SIGSEGV: altstack

    Notifications: epoll

    Architecture: amd64

    Disabled: none

    Misc: softdebug

    LLVM: supported, not enabled.

    GC: sgen

    root@66f9d4b4c73b:/#

  • 相关阅读:
    Django中的syncdb命令
    notepad++下的字体设置
    python中的getattr函数
    python实现虚拟茶话会
    利用python爬取海量疾病名称百度搜索词条目数的爬虫实现
    SQL里面如何取得前N条数据?
    python中怎么查看当前工作目录和更改工作目录
    python中thread模块中join函数
    python中的自测语句是什么?
    python读取数据库数据有乱码怎么解决?
  • 原文地址:https://www.cnblogs.com/sennly/p/4343678.html
Copyright © 2011-2022 走看看