在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
前言ASP.NET Core 是一个开源和跨平台的框架,用于构建如 Web 应用、物联网(IoT)应用和移动后端应用等连接到互联网的基于云的现代应用程序。ASP.NET Core 应用可运行于 .NET Core 和完整的 .NET Framework 之上。它整合了原来ASP.NET中的MVC和WebApi框架,你可以在 Windows、Mac 和 Linux 上跨平台的开发和运行你的 ASP.NET Core 应用。 vmware虚拟机安装vmware哪里下载?360软件管家就可以下载。然后网上找个序列号。 我这里安装的是12.1.1 安装很简单一直下一步就好了。 CentOS7.3安装下载CentOS http://isoredirect.centos.org/centos/7/isos/x86_64/ 我们可以选择163或阿里云的节点,速度会快点。 下载完成后打开vmware准备安装 菜鸟可以选择有界面的 选好后然后开始安装,然后设置密码,然后重启就好了。 Windows的客户端软件下载安装Xshell https://www.baidu.com/baidu?word=Xshell 开始第一个命令。查看IP
接下来,可以全部由Xshell操作。 打开Xshell 然后输入用户名密码登录。(使用root登录) .NET Core1.1安装根据微软资料 https://www.microsoft.com/net/core 在命令行执行: sudo yum install libunwind libicu #(安装libicu依赖) curl -sSL -o dotnet.tar.gz https://go.microsoft.com/fwlink/?linkid=848821 #(下载sdk压缩包) 根据网速,可能快可能慢 sudo mkdir -p /opt/dotnet && sudo tar zxf dotnet.tar.gz -C /opt/dotnet #(解压缩) sudo ln -s /opt/dotnet/dotnet /usr/local/bin #(创建链接) dotnet new console -o hwapp # 我们初始化一个示例Hello World应用程序 (这里稍微耗时点) cd hwapp dotnet restore dotnet run #运行应用程序 看到打印的hello world证明 .net core的环境已经装好了。 【小白技巧】
nginx1.12.1安装curl -o nginx.rpm http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm rpm -ivh nginx.rpm yum install nginx #安装 systemctl start nginx #启动nginx systemctl enable nginx #设置nginx的开机启动 然后登录 CentOs系统 打开浏览器 输入 :192.168.233.129 (之前查到的IP) 看到这个页面就代表安装成功了。 配置防火墙如果你在物理机的浏览器访问,你会发现访问不了。 firewall-cmd --zone=public --add-port=80/tcp --permanent #(开放80端口) systemctl restart firewalld #(重启防火墙以使配置即时生效) 然后访问成功。 部署ASP.NET Core应用程序打开VS2017 新建一个.net core 项目 右键发布(发布之前最好先在本地跑下看正常不) 然后打开我们的WinSCP(前面下载的) 点击登录,然后就可以看到CentOs系统的文件目录了。然后随便建个文件夹,准备放我们发布发好的程序。 右键上传 然后命令运行 cd /home/NetCoreDemo #这个目录 要输入你自己对应放的目录 dotnet netcoreDemo.dll # netcoreDemo.dll 这个对应你建的项目生成的dll 看到了5000 端口的一个网址,证明部署好了。 nginx 配置前面我们只说了nginx,并没有说是干嘛的。nginx的作用有点先iis,是个web服务器。做转发。 打开路径 /etc/nginx/conf.d server { listen 80; location / { proxy_pass http://localhost:5000; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection keep-alive; proxy_set_header Host $host; proxy_cache_bypass $http_upgrade; } } 将nginx添加至SELinux的白名单,否则会报502错误。 nginx -s reload #使其即时生效 【注意】然后这里访问下 http://192.168.233.130/ (对应你自己的centos ip,这一步好重要。应该是要先主动触发这个502错误吧。) yum install policycoreutils-python #(选y) cat /var/log/audit/audit.log | grep nginx | grep denied | audit2allow -M mynginx semodule -i mynginx.pp SELinux 对nginx访问目录的影响 https://www.cnblogs.com/mywebnumber/p/5572984.html 然后我们就可以在物理机上通过ip访问了(不用带端口了,直接80 然后 nginx 转到了5000)。 配置守护服务(Supervisor)yum install python-setuptools easy_install supervisor #安装Supervisor mkdir /etc/supervisor echo_supervisord_conf > /etc/supervisor/supervisord.conf #配置Supervisor 文件的最后 ;[include] ;files = relative/directory/*.ini 改成(【注意】去掉;且不能有空格) [include] files = conf.d/*.conf 进入目录 /etc/supervisor/ 新建 conf.d文件夹,conf.d文件夹下新建 netcoreDemo.conf文件 [program:netcoreDemo] command=dotnet netcoreDemo.dll ; (注意)运行程序的命令 directory= /home/NetCoreDemo/ ; (注意 注意)对应的你的项目的存放目录,这个地方好多初学者搞错!!! autorestart=true ; 程序意外退出是否自动重启 stderr_logfile=/var/log/WebApplication1.err.log ; 错误日志文件 stdout_logfile=/var/log/WebApplication1.out.log ; 输出日志文件 environment=ASPNETCORE_ENVIRONMENT=Production ; 进程环境变量 user=root ; 进程执行的用户身份 stopsignal=INT supervisord -c /etc/supervisor/supervisord.conf ps -ef | grep netcoreDemo #【注意】netcoreDemo是上面 program:netcoreDemo 的命名 supervisorctl reload #重新加载 然后就好了,现在关掉那个5000界面也可以访问。 配置Supervisor开机启动打开目录 /usr/lib/systemd/system/ 新建文件 supervisord.service 内容: # dservice for systemd (CentOS 7.0+) # by ET-CS (https://github.com/ET-CS) [Unit] Description=Supervisor daemon [Service] Type=forking ExecStart=/usr/bin/supervisord -c /etc/supervisor/supervisord.conf ExecStop=/usr/bin/supervisorctl shutdown ExecReload=/usr/bin/supervisorctl reload KillMode=process Restart=on-failure RestartSec=42s [Install] WantedBy=multi-user.target 执行命令: systemctl enable supervisord systemctl is-enabled supervisord #来验证是否为开机启动 systemctl stop supervisord #关闭 systemctl disable supervisord #禁用 到此,完工。现在重新电脑什么都不用管,直接可以访问部署好的网站。 MySql5.6.37安装http://www.cnblogs.com/starof/p/4680083.html (我用的方法二) 安装rar压缩下载 http://www.rarsoft.com/download.htm 把文件放服务器上。然后cd到这个目录执行 tar -zxvf rarlinux-x64-5.4.0.tar.gz # rarlinux-x64-5.4.0.tar.gz是你下载的文件名 cd rar make rar #安装 安装好了后我们就可以打命令解压文件了 cd #跳到压缩文件目录 rar x ceshi.rar #解压到当前文件夹 ceshi.rar是压缩文件名 rar a abc.rar ceshi #压缩文件夹 到 abc.rar 在CentOS中安装完rar命令,会自动安装zip命令 cd /home #进入/home目录 zip -r mydata.zip mydata #把/home目录下面的mydata目录压缩为mydata.zip unzip mydata.zip -d mydatabak #把/home目录下面的mydata.zip解压到mydatabak目录里面 zip -r abc123.zip abc 123.txt #把/home目录下面的abc文件夹和123.txt压缩成为abc123.zip unzip wwwroot.zip #把/home目录下面的wwwroot.zip直接解压到/home目录里面 unzip abc\*.zip #把/home目录下面的abc12.zip、abc23.zip、abc34.zip同时解压到/home目录里面 unzip -v wwwroot.zip #查看把/home目录下面的wwwroot.zip里面的内容 unzip -t wwwroot.zip #验证/home目录下面的wwwroot.zip是否完整 unzip -j wwwroot.zip #把/home目录下面wwwroot.zip里面的所有文件解压到第一级目录 常用linux命令cd #目录跳转 cd / #回到上一个目录 ls #查看目录下的文件 df -h #查看文件使用情况 mkdir #创建文件夹文件夹 vi # 编辑文件 :wq! #强制保存文件,并退出vi ifconfig -a #查看ip free #查看系统资源使用情况 http://blog.csdn.net/zhongluhuaok/article/details/52804187 firewall-cmd --zone=public --add-port=80/tcp --permanent #开放80端口,也可以是其他端口 firewall-cmd --zone=public --remove-port=80/tcp --permanent # 关闭端口 systemctl restart firewalld #重启防火墙,使其生效 service mysqld restart #重启mysql nginx -s reload # nginx 生效 reboot # 重启系统 supervisorctl start program_name #启动某个进程(program_name=你配置中写的程序名称) supervisorctl stop program_name #停止某一进程 (program_name=你配置中写的程序名称) supervisorctl reload #重新启动配置中的所有程序 supervisorctl stop all #停止全部进程 supervisorctl update #更新新的配置到supervisord supervisorctl restart program_name #重启某一进程 (program_name=你配置中写的程序名称) supervisorctl #查看正在守候的进程 http://blog.csdn.net/shudaqi2010/article/details/51153961 clear #刷新终端屏幕 (或者 ctrl + l) exit #退出 shift + insert #粘贴 ctrl + insert #复制 补充 centos上升级 .net core 2.0 需要先执行官网命令 curl -sSL -o dotnet.tar.gz https://aka.ms/dotnet-sdk-2.0.0-linux-x64 mkdir -p ~/dotnet && tar zxf dotnet.tar.gz -C ~/dotnet export PATH=$PATH:$HOME/dotnet 然后再删除原有文件夹 rm -rf /opt/dotnet #删除原有文件夹 rm -rf /usr/local/bin/dotnet #删除原来定义的dotnet命令 sudo ln -s /root/dotnet/dotnet /usr/local/bin #重新定义dotnet命令 项目程序也要升级到2.0,不然dotnet dll不能成功。 以上就是ASP.NET Core快速入门之环境篇的详细内容,更多关于ASP.NET Core环境搭建的资料请关注极客世界其它相关文章! |
请发表评论