Ubuntu16.04系统搭建.Net Core开发环境

1.安装 Git

sudo apt-get update
sudo apt-get install git

Do you want to continue? [Y/n] Y

git --version

2. 安装 UFW

sudo apt-get install ufw

sudo ufw enable
sudo ufw default deny

sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 3306/tcp
sudo ufw allow 27017/tcp
sudo ufw allow 6379/tcp
sudo ufw allow 8000:9000/tcp

3.安装 Nginx

sudo apt-get install build-essential
sudo apt-get install libtool
sudo apt-get update
sudo apt-get install libpcre3 libpcre3-dev
sudo apt-get install zlib1g-dev
sudo apt-get install openssl

wget http://nginx.org/download/nginx-1.14.2.tar.gz

tar -zxvf nginx-1.14.2.tar.gz

cd nginx-1.14.2

./configure --prefix=/usr/local/nginx

make

sudo make install

sudo /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf 

ps -ef|grep nginx

curl -L http://127.0.0.1/index.html

vi ~/.profile

INSERT >>>>>>>

export PATH=$PATH:/usr/local/nginx/sbin

source ~/.profile

vi /etc/init.d/nginx.server

COPY INSERT >>>>>>> 

sudo chmod +x /etc/init.d/nginx.server

sudo sysv-rc-conf nginx.server on
  • unable to resolve host iZs3y2byjpi9oxZ 解决方案:
vi /etc/hosts

INSERT >>>>>>>

127.0.0.1       iZs3y2byjpi9oxZ
  • /etc/init.d/nginx.server
#!/bin/sh
set -e
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DESC="nginx daemon"
NAME=nginx
DAEMON=/usr/local/nginx/sbin/$NAME
SCRIPTNAME=/etc/init.d/$NAME.server

# If the daemon file is not found, terminate the script.
test -x $DAEMON || exit 0

d_start() {
        $DAEMON || echo -n " already running"
}

d_stop() {
        $DAEMON –s quit || echo -n " not running"
}

d_reload() {
        $DAEMON –s reload || echo -n " could not reload"
}

case "$1" in
    start)
    echo -n "Starting $DESC: $NAME"
    d_start
    echo "."
    ;;
stop)
    echo -n "Stopping $DESC: $NAME"
    d_stop
    echo "."
    ;;
reload)
    echo -n "Reloading $DESC configuration..."
    d_reload
    echo "reloaded."
    ;;
restart)
    echo -n "Restarting $DESC: $NAME"
    d_stop
# Sleep for two seconds before starting again, this should give the
# Nginx daemon some time to perform a graceful stop.
    sleep 2
    d_start
    echo "."
    ;;
*)
    echo "Usage: $SCRIPTNAME {start|stop|restart|reload}" >&2
    exit 3
    ;;
esac

exit 0

4.安装 NetCore

wget https://packages.microsoft.com/config/ubuntu/16.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb

sudo dpkg -i packages-microsoft-prod.deb

sudo apt-get update; \
  sudo apt-get install -y apt-transport-https && \
  sudo apt-get update && \
  sudo apt-get install -y dotnet-sdk-3.1

dotnet --info

5.安装 MySQL

# wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz

wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz

tar zxvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz

sudo mv mysql-5.7.24-linux-glibc2.12-x86_64 /usr/local/mysql

vi /etc/my.cnf

COPY INSERT >>>>>>>

cd /usr/local/mysql

groupadd mysql
useradd -r -g mysql mysql
chown -R mysql:mysql ./

sudo bin/mysqld --initialize --user=mysql  --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

# copy initial password

[Note] A temporary password is generated for root@localhost: kiZI&a&kk6SQ

sudo ./support-files/mysql.server start

ps -ef|grep mysql

./bin/mysql -u root -p
Enter password: kiZI&a&kk6SQ

ALTER USER 'root' @'localhost' IDENTIFIED BY '123456';

CREATE USER 'root' @'%' IDENTIFIED BY '123456';

GRANT ALL ON *.* TO 'root' @'%';

FLUSH privileges;

sudo cp ./support-files/mysql.server /etc/init.d/mysql.server

sudo sysv-rc-conf mysql.server on

vi ~/.profile

INSERT >>>>>>>

export PATH=$PATH:/usr/local/mysql/bin

source ~/.profile
  • /etc/my.cnf
[mysqld]
port = 3306
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
max_connections=200
max_connect_errors=10
character-set-server=utf8mb4
default-storage-engine=INNODB
default_authentication_plugin=mysql_native_password

[mysql]
default-character-set=utf8mb4

[client]
port=3306
default-character-set=utf8mb4

6.安装 NodeJs

wget https://nodejs.org/dist/v14.15.1/node-v14.15.1-linux-x64.tar.xz

tar xf node-v14.15.1-linux-x64.tar.xz

sudo mv node-v14.15.1-linux-x64 /usr/local/nodejs

cd /usr/local/nodejs

ln -s /usr/local/nodejs/bin/node  /usr/local/bin/
node -v

ln -s /usr/local/nodejs/bin/npm   /usr/local/bin/
npm -v

npm config set registry https://registry.npm.taobao.org

# install pm2
npm install pm2@latest -g
ln -s /usr/local/nodejs/bin/pm2   /usr/local/bin/

sudo pm2 status

7.安装 MongoDB

wget -qO - https://www.mongodb.org/static/pgp/server-3.4.asc | sudo apt-key add -

echo "deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list

sudo apt-get update

sudo apt-get install -y mongodb-org

sudo service mongod start

sudo service mongod status

sudo service mongod stop

vi /etc/mongod.conf

EDIT >>>>>>>

# network interfaces
net:
  port: 27017
  #bindIp: 127.0.0.1
  bindIp: 0.0.0.0

#security:
security:
  authorization: enabled

sudo service mongod restart

ps -ef | grep mongod

# 进入数据库
mongo
# 用admin身份
use admin
# 创建超级管理员账号
db.createUser( {user: "admin",pwd: "admin",roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]})
# 测试授权
db.auth("admin","admin")
# 建库授权
use testdb
# 创建数据库管理账号
db.createUser( {user: "root",pwd: "123456",roles: [ { role: "readWrite", db: "testdb" } ]})
# 授权用户
db.auth("root","123456")
# 数据测试
db.log.insert({"created":"db","name":"testdb"})
db.log.insert({"created":"user","name":"root"})
exit

# 开机自启
sudo systemctl enable mongod
  • /etc/mongod.conf
# mongod.conf

# for documentation of all options, see:
#   https://docs.mongodb.com/v3.4/reference/configuration-options/

# systemLog Options:
systemLog:
  destination: file
  path: "/usr/local/mongodb/log/mongod.log"
  logAppend: true

# processManagement Options:
processManagement:
   fork: true

# net Options:
net:
   port: 27017
   #bindIp: 127.0.0.1
   bindIp: 0.0.0.0

# security Options:
#security:
security:
  authorization: enabled

# setParameter Options:
setParameter:
   enableLocalhostAuthBypass: false

# storage Options:
storage:
   dbPath: "/usr/local/mongodb/data"
   journal:
      enabled: true

# operationProfiling Options:

# replication Options:

# sharding Options:

# auditLog Options:

# snmp Options:

MongDB数据库角色对应如下:

  • Read:允许用户读取指定数据库
  • readWrite:允许用户读写指定数据库
  • dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
  • userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
  • clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
  • readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
  • readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
  • userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
  • dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
  • root:只在admin数据库中可用。超级账号,超级权限

7.安装 Redis

sudo apt-get install redis-server

Do you want to continue? [Y/n] Y

ps -ef|grep redis

vi /ect/redis/redis.conf

EDIT >>>>>>>

#bind 127.0.0.1
requirepass 123456

service redis-server restart

服务自启配置

sudo apt-get install sysv-rc-conf

# redis-server
sudo sysv-rc-conf redis-server on

# nginx.server
sudo sysv-rc-conf nginx.server on

# mysql.server
sudo sysv-rc-conf mysql.server on

# mongo
sudo systemctl enable mongod

实例软件的版本:

  • nginx-1.14.2.tar.gz
  • packages-microsoft-prod.deb
  • mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
  • node-v14.15.1-linux-x64.tar.xz

到此这篇关于Ubuntu系统搭建.Net Core开发环境的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Windows Server 2012 R2 Standard搭建ASP.NET Core环境图文教程

    前言: 随着ASP.NET Core 1.0的发布,论坛里相关的文章也越来越多,正好有时间在测试环境上搭建 ASP.NET Core的发布环境,把过程中遇到的问题写给大家,以便有用到的朋友需要. 环境: Windows Server 2012 R2 Standard with Update MSDN 链接:ed2k://|file|cn_windows_server_2012_r2_with_update_x64_dvd_6052725.iso|5545705472|121EC13B53882E

  • win10下ASP.NET Core部署环境搭建步骤

    随着ASP.NET Core 1.0 rtm的发布,网上有许多相关.net core 相关文章,今刚好有时间也在win10环境上搭建下 ASP.NET Core的部署环境,把过程记录下给大家. 1. 开发运行环境 1> Visual Studio 2015 Update 3* 2> .NET Core 1.0 for Visual Studio (包括asp.net core 模板,其中如果机器上没有.net core sdk会默认安装)地址https://go.microsoft.com/f

  • .Net Core+Angular Cli/Angular4开发环境搭建教程

    一.基础环境配置 1.安装VS 2017 v15.3或以上版本 2.安装VS Code最新版本 3.安装Node.js v6.9以上版本 4.重置全局npm源,修正为 淘宝的 NPM 镜像: npm install -g cnpm --registry=https://registry.npm.taobao.org 5.安装TypeScript cnpm install -g typescript typings 6.安装 AngularJS CLI cnpm install -g @angul

  • CodeFirst从零开始搭建Asp.Net Core2.0网站

    一步步教大家如何搭建Asp.Net Core2.0网站,以下所有都是建立在.NETCore2.0环境已经搭建好 右键解决方案>新建项目> 选择Web>ASP.NETCoreWeb应用程序(.NET Core) 选择Web应用程序,暂时不选择启用Docker,身份验证选择个人用户账户(会自动生成一系列和用户认证的代码) 随后生代码层次目录如下: 其中会包含身份信息的相关实现,比如相关实体信息(user)之类的,如果想对扩展微软自动的生成的用户实体类,可在Models中的Applicatio

  • 云服务器下搭建ASP.NET Core环境

    最近.net core如火如荼,国内这方面环境搭建方面的文档也非常多,但是不少已经是过时的,就算按照那个流程走下去也避免不了一些地方早就不一样了.所以下面我将从头到尾的教大家搭建一次环境,并且成功运行官网的demo. 一.系统环境 本次笔者因为懒的去做虚拟机,所以注册了一个云提供商的试用账户作为本次的主机. 系统: Ubuntu Server 14.04.2 LTS 64bit Mono: 1.0.0-rc1-update1 Coreclr: 1.0.0-rc1-update1 二.正文 1.首

  • Linux(Ubuntu)下搭建ASP.NET Core环境

    今天来学习一下ASP.NET Core 运行在Ubuntu中.无需安装mono . 环境 Ubuntu 14.04.4 LTS 服务器版 全新安装系统. 下载地址:http://mirrors.neusoft.edu.cn/ubuntu-releases/14.04.4/ubuntu-14.04.4-server-amd64.iso 你也可以下载桌面版安装. 下载地址:http://mirrors.neusoft.edu.cn/ubuntu-releases/14.04.4/ 安装DNVM 首先

  • 基于Jenkins搭建.NET Core持续集成环境过程图解

    我们用NuGet还原.NET Core项目会报以下错误: error NETSDK1064: 未找到版本为 1.8.2 的包 BouncyCastle.NetCore.它可能已在 NuGet 还原后删除.否则,NuGet 还原可能只是部分完成,这种情况可能是最大路径长度限制所导致. 关于这个问题我找了好久 也是google到一条信息才明白 这里就直接放解决办法,其实网上就有方法,有的简短,有的笼统 我们这里用到的是dotnet命令来还原.构建.以及部署 从 .NET Core 2.0 开始,无需

  • VS2015 搭建Asp.net core开发环境的方法

    前言 随着ASP.NET Core 1.0 rtm的发布,网上有许多相关.net core 相关文章,最近正好有时间就尝试VS2015 搭建Asp.net core开发环境,以下是简单的搭建过程,下面来一起看看吧. 步骤如下 一.首先你得装个vs2015 并且保证已经升级至 update3及以上(此处附上一个vs2015带up3的下载链接: ed2k://|file|cn_visual_studio_enterprise_2015_with_update_3_x86_x64_dvd_892329

  • .Net Core服务治理Consul搭建集群

    延续上一篇的话题继续,顺便放上一篇的传送门:点这里. 集群的必要性 consul本身就是管理集群的,现在还需要给consul搞个集群,这是为啥?因为consul单点也容易挂啊!万一管理集群的consul挂掉了,那么相当于上下游应用都变成了瞎子,看不到也调不到.所以集群的必要性不用我说了吧? Server & Client 生产环境下,可以选择上面两种模式,下面我就简称S端.C端.说说它俩有啥不一样: S端: 1.数量不宜过多,一般推荐3.5个,要求是奇数. 2.持久化保存节点数据. 3.多个S端

  • Centos7系统下搭建.NET Core2.0+Nginx+Supervisor环境

    一.Linux .NET Core简介 一直以来,微软只对自家平台提供.NET支持,这样等于让这个"理论上"可以跨平台的框架在Linux和macOS上的支持只能由第三方项目提供(比如Mono .NET). 直到微软推出完全开源的.NET Core.这个开源的平台兼容.NET  Standard,并且能在Windows.Linux和MacOS上提供完全一致的API.虽然这个小巧的.NET框架只是标准.NET的一个子集,但是已经相当强大了. 一方面,这个小巧的框架可以让某些功能性应用同时运

  • .Net Core3.0 WebApi 项目框架搭建之使用Serilog替换掉Log4j

    为什么使用Serilog Serilog 是一个用于.NET应用程序的日志记录开源库,配置简单,接口干净,并可运行在最新的.NET平台上,与其他日志库不同, Serilog 是以功能强大的结构化事件数据为基础构建的, 支持将日志输出到控制台.文件.数据库和其它更多的方式,支持参数化日志模板,非常灵活. 之前我们项目使用的是Log4j来记录用户日志的,在开发的过程中,慢慢的发现Log4j好像并不能满足我们的需求,比如结构化,日志分析等,于是决定使用serilog来替换掉Log4j,在使用的过程中发

  • 详解.Net Core + Angular2 环境搭建

    本文介绍了.Net Core + Angular2 环境搭建,具体如下: 环境搭建: 1)node.js版本>5.0,NPM版本>3.0,TypeScript版本>2.0(全装最新版就好了) 2)安装NTVS 1.2(node tools for vs),TSVS dev 1.4(TS for VS) 3)构建package.json,tsconfig.json,gulp.js文件 1.package.json { "name": "template.ang

随机推荐