查看linux内核版本

uname -a

打印结果

python@ubuntu:~$ uname -a
Linux ubuntu 4.4.0-31-generic #50-Ubuntu SMP Wed Jul 13 00:07:12 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

查看ubuntu系统版本

lsb_release -a

打印结果

python@ubuntu:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.04. LTS
Release: 16.04
Codename: xenial
python@ubuntu:~$

可以看到版本号是 16.4

查看官方文档执行 dotnet 环境安装过程

https://www.microsoft.com/net/learn/get-started/linuxredhat

这里我们选择 Ubuntu

继续执行下面的命令

Register the trusted Microsoft signature key:

curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.gpg

继续

sudo mv microsoft.gpg /etc/apt/trusted.gpg.d/microsoft.gpg

根据系统版本,执行下面的命令

sudo sh -c 'echo "deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-ubuntu-xenial-prod xenial main" > /etc/apt/sources.list.d/dotnetdev.list'

好了,环境部署完毕,下面我们安装 SDK

分别执行下面三行命令

sudo apt-get install apt-transport-https
sudo apt-get update
sudo apt-get install dotnet-sdk-2.1
 

至此,SDK安装完毕

---------------------------------------------------------------------------------------------------------------------

下面我们新建一个控制台项目测试一下

dotnet new console -o myApp
cd myApp
dotnet run

遇到了一个目录权限问题

Template "Console Application" could not be created.
Access to the path '/etc/apt/trusted.gpg.d/myApp' is denied.

使用权限命令,添加目录的权限

然而这里,我们修改一下创建位置,改成当前的 home 目录创建即可

运行结果如下

python@ubuntu:~/dotnet$ dir
myApp
python@ubuntu:~/dotnet$ cd myApp/
python@ubuntu:~/dotnet/myApp$ dir
myApp.csproj obj Program.cs
python@ubuntu:~/dotnet/myApp$ dotnet run
Hello World!
python@ubuntu:~/dotnet/myApp$

编译运行成功了。

下面我们用在 windows 下编译好的 mvcapi 项目在 linux 上运行一下试试。

首先我们把整个项目解决方案目录传到 linux 服务器上

这里我用的是 xftp

然后要运行哪个项目,就直接切换到项目的目录,例如我要运行 mywebapi 这个api接口

python@ubuntu:~/dotnet/myweb$ cd mywebapi
python@ubuntu:~/dotnet/myweb/mywebapi$ ls
appsettings.Development.json bin mywebapi.csproj obj Properties wwwroot
appsettings.json Controllers mywebapi.csproj.user Program.cs Startup.cs
python@ubuntu:~/dotnet/myweb/mywebapi$ dotnet run
Models/GEDU_LSA_V_1_7_1Context.cs(,): warning CS1030: #warning: 'To protect potentially sensitive information in your connection string, you should move it out of source code. See http://go.microsoft.com/fwlink/?LinkId=723263 for guidance on storing connection strings.' [/home/python/dotnet/myweb/core/mydb.csproj]
Controllers/MyController.cs(,): warning CS0162: Unreachable code detected [/home/python/dotnet/myweb/mywebapi/mywebapi.csproj]
Using launch settings from /home/python/dotnet/myweb/mywebapi/Properties/launchSettings.json...
Hosting environment: Development
Content root path: /home/python/dotnet/myweb/mywebapi
Now listening on: http://localhost:61697
Application started. Press Ctrl+C to shut down.
^CApplication is shutting down...

这个时候我们访问以下 api 接口地址

成功看到接口返回的json

mvc项目也是这样操作,即可。

这里只是简单的通过命令行运行,如果要作为服务器,还需要 反向代理 和 自启动 的高级配置

可参考如下博客

【netcore基础】ubuntu 16.04 搭建.net core 2.1 linux 运行环境 nginx反向代理 supervisor配置自启动

【.NetCore学习】ubuntu16.04 搭建.net core mvc api 运行环境的更多相关文章

  1. 【netcore基础】ubuntu 16.04 搭建.net core 2.1 linux 运行环境 nginx反向代理 supervisor配置自启动

    今天来整理下 netcore 在 linux(ubuntu) 上的运行环境搭建 对应版本 ubuntu 16.04 .net core 2.1 nginx version: nginx/1.10.3 ...

  2. Ubuntu16.04搭建OpenVPN

    Ubuntu16.04搭建OpenVPN 2018年12月27日 15:50:59 VinQin 阅读数:21042   简介 如果在一个非信任网络下比如旅社或者咖啡店的WiFi网络下,想要通过你的智 ...

  3. Ubuntu16.04搭建LAMP开发环境

    Ubuntu16.04搭建LAMP开发环境 虚拟机上安装好Ubuntu16.04后,是一台空白的Ubuntu.我的目的是搭建LAMP环境,顺便搭一个Python Django环境. 基本设置 1.配置 ...

  4. Android开发学习总结(一)——搭建最新版本的Android开发环境

    Android开发学习总结(一)——搭建最新版本的Android开发环境(转) 最近由于工作中要负责开发一款Android的App,之前都是做JavaWeb的开发,Android开发虽然有所了解,但是 ...

  5. 32位Ubuntu12.04搭建Hadoop2.5.1完全分布式环境

    准备工作 1.准备安装环境: 4台PC,均安装32位Ubuntu12.04操作系统,统一用户名和密码 交换机1台 网线5根,4根分别用于PC与交换机相连,1根网线连接交换机和实验室网口 2.使用ifc ...

  6. ASP.NET Core MVC/API(一)

    ASP.NET Core MVC/API(一) 文件夹说明 Pages文件夹:包括了Razor页面和支持文件 .cshtml文件:是使用了Razor语法的C#代码的HTML页面 .cshtml.cs文 ...

  7. 模拟搭建Web项目的真实运行环境(一)

    序言 最近尝试完整搭建一个Web项目的运行环境,总结一下这几个月学到的知识点. 后面的文章主要包括一下几个内容: A. 搭建一个Linux服务器,用来部署Redis.Mongo等数据存储环境: B. ...

  8. Harbor 企业级私有仓库 Ubuntu16.04 搭建及使用

    一.Harbor简介 1.1.什么是Harbor 几个VMware中国的人搞了一个容器镜像仓库.Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器. 1.2.Harbor架 ...

  9. 【.net core 跨平台】第一步 在Ubuntu16.04 配置.net core环境

    本次使用VMware10.0.4工具安装Ubuntu16.04系统并配置.net core环境   Ubuntu 16.04 desktop下载地址:http://releases.ubuntu.co ...

随机推荐

  1. [原创]Java性能优化权威指南读书思维导图2

    [原创]Java性能优化权威指南读书思维导图2

  2. The op amp module

  3. selenium+python自动化78-autoit参数化与批量上传

    前言 前一篇autoit实现文件上传打包成.exe可执行文件后,每次只能传固定的那个图片,我们实际测试时候希望传不同的图片. 这样每次调用的时候,在命令行里面加一个文件路径的参数就行. 一.命令行参数 ...

  4. Linux shell命令 cp 加上-f还是提示是否覆盖

    这是由于环境变量中有 allias cp='cp -i' 为了去掉这个系统自带的别名,能够使用grep -r --include="*" "alias cp"  ...

  5. Asp.Net Core异常处理整理

    目前版本是Asp.Net Core v1.1,这个版本的感觉对Http请求中的错误处理方便不是很完善. 没有HttpException异常类,不能在任何的地方自由的抛出对应的异常状态. 一.默认的异常 ...

  6. 如何将Revit明细表导出为Excel文档

    Revit软件没有将明细表直接导出为Excel电子表格的功能,Revit只能将明细表导出为TXT格式,但是这种TXT文件用EXCEL处理软件打开然后另存为XLS格式即可,以Revit2013版自带的建 ...

  7. 一篇文章让你学透Linux系统中的more命令

    Linux 下有很多实用工具可以让你在终端界面查看文本文件.其中一个就是 more. more 跟我之前另一篇文章里写到的工具 —— less 很相似.它们之间的主要不同点在于 more 只允许你向前 ...

  8. unix环境高级编程-3.10-文件共享(转)

    unix系统支持在不同进程间共享打开的文件. 内核使用三种数据结果表示打开的文件. (1)每个进程在进程表中都有一个记录项,记录项中包含有一张打开文件的描述符表,可将其视为一个矢量,每个描述符占用一项 ...

  9. 使用 vmstat, mpstat 和 sar 查看系统运行参数

    vmstat 字段含义 Procs r: The number of processes waiting for run time. 等待执行的进程, 数字越大意味着CPU越忙, 果该数字经常大于逻辑 ...

  10. ASP.NET MVC 4 简介

    介绍 使用Visual Studio 2010开发的话,首先需要安装MVC4,可以参考另一篇文章 进行安装. ASP.NET MVC 运行流程 (Clinet) Http Request 客户端发起 ...