索引:html
目录索引web
一. 创建 .NetCore 项目docker
a.新建项目json
------------------------------------------------------------------------------------vim
------------------------------------------------------------------------------------bash
b.选择项目类型app
------------------------------------------------------------------------------------ide
------------------------------------------------------------------------------------网站
c.添加控制器ui
------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------
------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------
1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Threading.Tasks; 5 using Microsoft.AspNetCore.Mvc; 6 7 namespace DemoLM.Controllers 8 { 9 public class DockerTestController : Controller 10 { 11 public IActionResult DockerIndex() 12 { 13 return View(); 14 } 15 } 16 }
-------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------
d.添加视图
-------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------
1 @{ 2 Layout = null; 3 } 4 5 <!DOCTYPE html> 6 7 <html> 8 <head> 9 <meta name="viewport" content="width=device-width" /> 10 <title>DockerIndex</title> 11 </head> 12 <body> 13 <h1>这是Docker中的Asp.net Core APP !</h1> 14 </body> 15 </html>
---------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------
e.修改默认请求
1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Threading.Tasks; 5 using Microsoft.AspNetCore.Builder; 6 using Microsoft.AspNetCore.Hosting; 7 using Microsoft.Extensions.Configuration; 8 using Microsoft.Extensions.DependencyInjection; 9 using Microsoft.Extensions.Logging; 10 11 namespace DemoLM 12 { 13 public class Startup 14 { 15 public Startup(IHostingEnvironment env) 16 { 17 var builder = new ConfigurationBuilder() 18 .SetBasePath(env.ContentRootPath) 19 .AddJsonFile("appsettings.json", optional: false, reloadOnChange: true) 20 .AddJsonFile($"appsettings.{env.EnvironmentName}.json", optional: true) 21 .AddEnvironmentVariables(); 22 Configuration = builder.Build(); 23 } 24 25 public IConfigurationRoot Configuration { get; } 26 27 // This method gets called by the runtime. Use this method to add services to the container. 28 public void ConfigureServices(IServiceCollection services) 29 { 30 // Add framework services. 31 services.AddMvc(); 32 } 33 34 // This method gets called by the runtime. Use this method to configure the HTTP request pipeline. 35 public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory) 36 { 37 loggerFactory.AddConsole(Configuration.GetSection("Logging")); 38 loggerFactory.AddDebug(); 39 40 if (env.IsDevelopment()) 41 { 42 app.UseDeveloperExceptionPage(); 43 app.UseBrowserLink(); 44 } 45 else 46 { 47 app.UseExceptionHandler("/Home/Error"); 48 } 49 50 app.UseStaticFiles(); 51 52 app.UseMvc(routes => 53 { 54 routes.MapRoute( 55 name: "default", 56 template: "{controller=DockerTest}/{action=DockerIndex}/{id?}"); 57 }); 58 } 59 } 60 }
---------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------
f.发布
---------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------
二. 准备 CentOS 环境
a.准备虚拟机
---------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------
b.安装 docker
1 yum install docker
----------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------
c.设置docker 服务
1 systemctl start docker.service 2 systemctl enable docker.service
-----------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------
三. 打包 站点镜像
a.将程序放入 /root
-----------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------
b.命令切换至 DemoLM
1 cd ./DemoLM
-----------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------
c.建立 Dockerfile
1 vim ./Dockerfile
--------------------------------------------------------------------------------------
------------------------------------------------------------------------------------
1 FROM docker.io/microsoft/aspnetcore 2 COPY ./bin/Release/PublishOutput ./publish 3 WORKDIR /publish 4 EXPOSE 80 5 CMD ["dotnet","DemoLM.dll"]
-----------------------------------------------------------------------------------
------------------------------------------------------------------------------------
d.打包镜像
1 docker build -t lmapp:1.0 .
------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------
四. 运行镜像 并浏览网站
a.查看镜像
1 docker images
---------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------
b.运行镜像
1 docker run -d -t --name lmweb10 -p 8800:80 lmapp:1.0
----------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------
c.查看运行状态
1 docker logs lmweb10
---------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------
1 docker ps
-----------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------
d.浏览站点
-------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------
五. 详细知识点讲解,请看PPT 分享 O(∩_∩)O哈哈~ ( PS:请关注后续博客 )
a. Linux 讲解
b. .NetCore 讲解
c. Docker 讲解
e. Git hooks 讲解
f. Visual Studio 讲解
蒙
2017-07-05 14:28 周三