Docker运行 Mono
Docker运行 Mono
Docker 是最近相当热门的一个名词,它是一个基于 Linux Container 的轻量化的虚拟技术,而微软也相当积极与 Docker 合作,在 Azure 上支持这个火热的技术,并且提供简单的方式来建立 Docker Host,本文将会介绍如何在 Azure 上使用 Docker运行DockerMono镜像。
Docker 简介
Docker 是一个开源的项目,主要的特点是能将应用程序包装在一个 LXC (Linux Container) 容器中,当这些应用被包装进容器后,部署、迁移都变得更为简单。与传统的虚拟化技术相比,虚拟机需要安装操作系统才能执行应用程序,而 Container 则不需要安装操作系统就能运行应用程序。Container 技术是一种在 操作系统内的 Kernel 层所打造虚拟运行环境,所以 Container 彼此之间共享了 Host OS 的 Kernel,但通过namespace 区分来达到隔离每个容器的目的。
本文并不会针对 Docker 这个技术做深入的介绍,主要着重在 Azure 对于 Docker 所提供的支持做介绍,详细了解可以参考 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:/#
Docker运行 Mono的更多相关文章
- 在 Azure 上使用 Docker运行 Mono
Docker 是最近相当热门的一个名词,它是一个基于 Linux Container 的轻量化的虚拟技术,而微软也相当积极与 Docker 合作,在 Azure 上支持这个火热的技术,并且提供简单的方 ...
- 如何使用windows版Docker并在IntelliJ IDEA使用Docker运行Spring Cloud项目
如何使用windows版Docker并在IntelliJ IDEA使用Docker运行Spring Cloud项目 #1:前提准备 1.1 首先请确认你的电脑是windows10专业版或企业版,只有这 ...
- Docker 运行Tensorboard 和 jupyter的正确方法
Docker 运行Tensorboard 和 jupyter的正确方法 网上找了很多方法都是jupyter 运行正常但不知道如何打开Tensorboard.折腾了很久,实验很多中方法最终找到了一个正确 ...
- 在Linux(Centos7)上使用Docker运行.NetCore
在上一篇中我们写了如何在windows中使用docker运行.netcore,既然我们了解了windows下的运行发布,我们也可以试试linux下使用docker运行.netcore项目,那么今天我们 ...
- 在Windows上使用Docker运行.NetCore
今天我们来说下如何在windows下使用docker运行.net core,既然是docker,那么我们首先得在windows上安装docker. 在Windows安装 docker 有两种选择 :1 ...
- ASP.NET Core 2.1 使用Docker运行
重要提示,本文为 ASP.NET Core 2.1 如果你是 2.2 那么请将文中的镜像换为 microsoft/dotnet:2.2.0-aspnetcore-runtime 即可,其他操作一样 1 ...
- Docker学习笔记之搭建Docker运行环境
0x00 概述 既然 Docker 是一款实用软件,我们就不得不先从它的安装说起,只有让 Docker 运行在我们的计算机上,才能更方便我们对 Docker 相关知识和使用方式的学习.得益于与商业性的 ...
- nuxt docker 运行
nuxt 是vue 版的next ,实现的功能还是很方便的,对于需要开发性能要求比较高的web app 是一个很不错的选择 备注: 项目很简单,使用docker && docker-c ...
- Singer 学习五 docker 运行说明
介绍过一个工具knots ,方便Singer 可视化开发的工具,但是默认这个工具包含的tap 以及target 比较少(可以自己扩展) 同时这个工具就是基于docker 运行的 docker 运行的几 ...
随机推荐
- Unity3d 网络编程(三)(Unity3d内置简单的网络server编制)
使用Unity3d内置的网络建立一个简单的server.主机时,请使用机器.创建一个client连接到本机. watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv ...
- [Unity3D]Unity3D游戏开发3D选择场景中的对象,并显示轮廓效果强化版
大家好,我是秦培,欢迎关注我的博客,我的博客地址blog.csdn.net/qinyuanpei. 在上一篇文章中,我们通过自己定义着色器实现了一个简单的在3D游戏中选取.显示物体轮廓的实例. 在文章 ...
- EEPlat的元数据驱动的运行引擎
EEPlat採用了元数据驱动的核心思想,因而EEPlat最重要的就是完好的元模型体系及高效灵活的解析运行引擎.EEPlat的运行引擎通过解析基于元模型的元数据,解释运行形成终于的业务系统. EEPla ...
- 设计模式之空对象(Null Object)模式
通过引用Null Object,用于取消业务逻辑中对对象的为空推断 类图: Nullable: package com.demo.user; public interface Nullable { b ...
- [SignalR]Groups操作——后续
原文:[SignalR]Groups操作——后续 继续http://www.cnblogs.com/YanZhiwei/p/3359175.html之前,那怎么实现发送的消息推送到隶属于这个组的用户呢 ...
- 【cocos2d-js公文】十八、Cocos2d-JS v3.0物业风格API
1. 新的API风格 我们直接来看看你能够怎样使用Cocos2d-JS v3.0: 曾经的API 新的API node.setPosition(x, y); node.x = x; node.y = ...
- Codeforces Round #274 (Div. 2) B. Towers
As you know, all the kids in Berland love playing with cubes. Little Petya has n towers consisting o ...
- ResourceBundle
ResourceBundle本质上也是一个映射,但是它提供了国际化的功能. 假设电脑设置的地区是中国大陆,语言是中文 那么你向ResourceBundle(资源约束名称为base)获取abc变量的 ...
- 开源 自由 java CMS - FreeCMS2.0 签字
项目地址:http://www.freeteam.cn/ 会员注冊 打开浏览器,输入http://localhost:8080/register.jsp. 输入注冊信息后点击"注冊" ...
- Lenovo E46A-Win 7_无线灯亮但无法启动(耽误3天以上您信吗.....)问题: wlan autoconfig 依赖服务或组无法启动
Lenovo E46A-Win 7_无线灯亮但无法启动(耽误3天以上您信吗.....)问题: wlan autoconfig 依赖服务或组无法启动 提示: windows7 无线连接服务wlan au ...