在Docker Container 内部安装 Mono 的方法 ---From官网

1.首先 mono 是什么

Mono是一个由Xamarin公司(先前是Novell,最早为Ximian)所主持的自由开放源代码项目。   该项目的目标是创建一系列匹配ECMA标准(Ecma-334和Ecma-335)的.NET工具,包括C#编译器和通用语言架构。  与微软的.NET Framework(共通语言运行平台)不同,Mono项目不仅可以运行于Windows系统上,还可以运行于Linux,FreeBSD,Unix,OS X和Solaris,甚至一些游戏平台,例如:Playstation 3,Wii或XBox 360

摘自百度百科

2. 公司的产品开发时需要用到mono 

3. 最简单的办法是使用 微软的dotnet sdk 镜像再安装 mono

4. 自己对mono几乎一无所知。

5.最简单的办法, 从hub.docker 里面查找 mono 找到dockerfile 的创建方式 直接进行使用即可

6. 连接到相应的dockerfile 里面 直接点击版本号 即可

https://github.com/mono/docker/blob/c47c852008be6934ac650f282c18c70f2cfec72f/6.0.0.313/slim/Dockerfile

网址在这里

注意里面的内容为:

FROM debian:stretch-slim
  
 # MAINTAINER Jo Shields <jo.shields@xamarin.com>
 # MAINTAINER Alexander Köplinger <alkpli@microsoft.com>
  
 ENV MONO_VERSION 6.0.0.313
  
 RUN apt-get update \
 && apt-get install -y --no-install-recommends gnupg dirmngr \
 && rm -rf /var/lib/apt/lists/* \
 && export GNUPGHOME="$(mktemp -d)" \
 && gpg --batch --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF \
 && gpg --batch --export --armor 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF > /etc/apt/trusted.gpg.d/mono.gpg.asc \
 && gpgconf --kill all \
 && rm -rf "$GNUPGHOME" \
 && apt-key list | grep Xamarin \
 && apt-get purge -y --auto-remove gnupg dirmngr
  
 RUN echo "deb http://download.mono-project.com/repo/debian stable-stretch/snapshots/$MONO_VERSION main" > /etc/apt/sources.list.d/mono-official-stable.list \
 && apt-get update \
 && apt-get install -y mono-runtime \
 && rm -rf /var/lib/apt/lists/* /tmp/*
 

7. 自己修改一下(庆幸的是 dotnet sdk 也使用的ubuntu 直接可以用如上的命令进行处理)

 

FROM dotnetsdk2.1vimssh:gscloud1906
# 注意这里是使用了自己安装 vim 的 images 进行的后续处理

RUN apt-get update \
  && apt-get install -y --no-install-recommends gnupg dirmngr \
  && rm -rf /var/lib/apt/lists/* \
  && export GNUPGHOME="$(mktemp -d)" \
  && gpg --batch --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF \
  && gpg --batch --export --armor 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF > /etc/apt/trusted.gpg.d/mono.gpg.asc \
  && gpgconf --kill all \
  && rm -rf "$GNUPGHOME" \
  && apt-key list | grep Xamarin \
  && apt-get purge -y --auto-remove gnupg dirmngr
ENV MONO_VERSION 6.0.0.313

RUN echo "deb http://download.mono-project.com/repo/debian stable-stretch/snapshots/$MONO_VERSION main" > /etc/apt/sources.list.d/mono-official-stable.list \
  && apt-get update \
  && apt-get install -y mono-runtime \
  && rm -rf /var/lib/apt/lists/* /tmp/*

8. 执行docker build 就可以生成带mono的环境了。 

转载于:https://www.cnblogs.com/jinanxiaolaohu/p/11257728.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值