根据前面的方法,在windows和Linux共享文件夹,然后就可以开发了!

Start up an Ubuntu container

$ docker run -it ubuntu bash

Update apt-get inside the container

$ apt-get update

Install mono-complete

root@47b0e0464825:/# apt-get install mono-complete

Sanity test – run mono

root@47b0e0464825:/# mono
Usage is: mono [options] program [program-options] Development:
--aot[=<options>] Compiles the assembly to native code
...
--gc=[sgen,boehm] Select SGen or Boehm GC (runs mono or mono-sgen)

Suspend container, back to host shell

$ <Control-P><Control-Q>
root@47b0e0464825:/# [root@localhost share]#
[root@localhost share]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
47b0e0464825 ubuntu "bash" About an hour ago Up About an hour furious_payne

Commit changes to new Docker image

[root@localhost share]# docker commit 47b0e0464825 howie/monodev
87f7b9c4f3f5e809e3141b78117d6d8b984935a6b1023cbb9756409bdaad0cb4

Run new Docker image

root@localhost share]# docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
howie/monodev latest 87f7b9c4f3f5 3 minutes ago 589.8 MB

Create a hellomono.cs file

$ vim hellomono.cs
[root@localhost share]# ls
hellomono.cs

public class HelloMono
{
static public void Main()
{
System.Console.WriteLine("Hello Mono!");
}
}

compile

[root@localhost share]# docker run -it --rm -v $(pwd):/mono -w/mono howie/monodev mcs hellomono.cs

Run

[root@localhost share]# docker run -it --rm -v $(pwd):/mono -w /mono howie/monodev mono hellomono.exe
Hello Mono!

参考文章:http://dotnetliberty.com/index.php/2015/10/04/mono-and-c-sharp-on-docker-hello-world-in-15-steps/?_tmc=JnJW_22cvahemGz-VrPpV-o6AeShsAY4R6CsqV6i5V4&mkt_tok=3RkMMJWWfF9wsRonuqTMZKXonjHpfsX57uQtXa%2BzlMI%2F0ER3fOvrPUfGjI4ASsBiI%2BSLDwEYGJlv6SgFQ7LMMaZq1rgMXBk%3D

【Howie玩docker】-使用mono编译c#程序的更多相关文章

  1. 【Howie玩docker】-windows下玩docker

    Windows下安装toolbox一直没成功,于是投机取巧,用虚拟机手工打造玩docker的方法. 步骤: 安装虚拟机,安装centos 在win下建立共享文件夹,假如是 f:/share 在cent ...

  2. 【Howie玩docker】-命令行只显示-bash-4.1#

    灵雀云上面用docker建了个centOS的实例,首个免费,正好当云主机来玩. 但是,打开有个问题,命令行不显示当前用户和路径. 只显示: -bash-4.1# 简单,配置文件不全而已. 下面对其重新 ...

  3. 【Howie玩docker】-docker安装

    windows忽略,小苹果木有,所以咱只看ubuntu和centOS的吧! 参考书<Docker技术入门与实战> Ubuntu 14.04安装Docker Ubuntu 14.04版本官方 ...

  4. 【Howie玩docker】-Centos 7 docker 启动容器iptables报No chain/target/match by that name

    重启了一下服务器,以前能运行的docker网络应用都不能正常开启了. 因为用的是centos7,所以猜测有可能是iptables的问题. docker start 或者run 后总是提示类似的错误: ...

  5. 【Howie玩docker】-Docker常用命令操作

    attach     附加到一个运行的容器上面       --no-stdin=false Do not attach stdin       --sig-proxy=true Proxify al ...

  6. 在 Azure 上使用 Docker运行 Mono

    Docker 是最近相当热门的一个名词,它是一个基于 Linux Container 的轻量化的虚拟技术,而微软也相当积极与 Docker 合作,在 Azure 上支持这个火热的技术,并且提供简单的方 ...

  7. Docker运行 Mono

    Docker运行 Mono Docker 是最近相当热门的一个名词,它是一个基于 Linux Container 的轻量化的虚拟技术,而微软也相当积极与 Docker 合作,在 Azure 上支持这个 ...

  8. Docker源码编译

    官方建议docker源码编译在docker容器内进行,因为官方提供的容器内已经继承了编译需要的环境,如果非要自己搭建编译环境也不是不可以,就是稍微有些繁琐.以下以1.8.2版本为例. 1.pull d ...

  9. 使用docker创建aosp编译环境

    如果只需要编译一个版本的aosp,那么如果在主机上架建环境即可,可写的程序如果要在各个aosp版本中编译,那在主机上架建多个aosp编译环境可以会比较麻烦,github上找到一个openstf用doc ...

随机推荐

  1. 08JS高级 ——“继承”

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...

  2. 使用ajax发送邮件的实例

    jsp页面代码如下: <tr>   <td>    发件人地址:<s:textfield id="fromAddress" name="fr ...

  3. 表格(table) 插件:支持当前行增行、删除。使用事件委托

    最近做一个项目,需要对表格进行增行和删行. 研究了一下jquery操作dom的方法和事件委托原理,下面是我编写的例子,源码传上,欢迎高手指点. 功能: 支持在指定行下面增行: 支持删行指定行: 增行. ...

  4. Django模板-基础知识

    上一篇中带参数的URLconf虽然可以做到传参动态显示内容,但是最终现实的内容还是硬编码到Python代码中的 def hours_ahead(request,phours): try: phours ...

  5. [Backbone.js]如何处理Model里面嵌入的Collection?

    写了近半个月的backbone.js代码,从一开始的todo到现在做仿微信的网页聊天,其中最大的困惑就在于如何处理比较复杂的Model,其内嵌了一个或者多个Collections. 假设我们有一个Pe ...

  6. android-Java SoftReference,WeakReference,Direct Reference简介

    主要部分: SoftReference(软引用)是java中一个用来实现缓存内容的类.通过此类,可以观察某对象什么时候会被垃圾收集的执行绪清除.被 Soft Reference 指到的对象,即使没有任 ...

  7. android基础4——Mainifest

    众所周知,应用程序中的每一个UI都是通过Activity类的一个或者多个拓展实现的.在桌面开发环境中,Activity相当于Form,来布局和显示信息,以及影响用户的动作.Mainifest可以定义应 ...

  8. docker 指定容器名字

    docker:/root# docker run -itd --name linux123 ubuntu /bin/bash Unable to find image 'ubuntu:latest' ...

  9. BZOJ 3237([Ahoi2013]连通图-cdq图重构-连通性缩点)

    3237: [Ahoi2013]连通图 Time Limit: 20 Sec   Memory Limit: 512 MB Submit: 106   Solved: 31 [ Submit][ St ...

  10. 网易云课堂_程序设计入门-C语言_第一周:简单的计算程序_1逆序的三位数

    1 逆序的三位数(5分) 题目内容: 程序每次读入一个正三位数,然后输出逆序的数字.注意,当输入的数字含有结尾的0时,输出不应带有前导的0.比如输入700,输出应该是7. 输入格式: 每个测试是一个3 ...