• Asp.Net Core + Docker 搭建


    一、Docker安装

    (1)机器准备

            本次实验,我是在Win10上,使用Vmware Workstation虚拟机安装的Ubuntu 18.04.l LTS版本进行搭建。

    (2)安装Docker

       # yum install docker

       注意:如果提示未安装yum 使用命令:apt-get install yum,如果在安装yum时遇到E:Unable to locate package yum错误时,尝试以下解决方法:

       1)、首先执行命令:apt-get update后,再尝试命令:apt-get install yum,如果能正确安装yum,后面的步骤忽略

       2)、执行命令:apt-get upgrade后,再尝试命令:apt-get install yum,如果能正确安装yum,后面的步骤忽略

      3)、将apt的源替换成阿里的。具体操作:进入/etc/apt目录。如图1

    640?wx_fmt=other

    图1

    再执行vim sources.list编辑apt源文件,并按照以下输入后保存退出(如图:2),再依次执行:apt-get update、apt-get upgrade、apt-get install yum命令,不除意外能够正确安装yum

    640?wx_fmt=other

    图2 替换apt源


    (3)启动docker服务

      # systemctl start docker.service

        查看docker版本信息 如图3

      # docker version

    640?wx_fmt=other

    图3


    (4)配置docker加速器(云服务器可以不配置)

        # vim /etc/docker/daemon.json

        {

           "registry-mirrors": ["http://hub-mirror.c.163.com","https://d8b3zdiw.mirror.aliyuncs.com"]

        }

    (5)搭建ftp服务器vsftp,方便进行VS直接发布程序到服务器上

         该步骤非必需,也可以使用其他工具将测试程序拷贝到Linux服务器。ftp服务器搭建具体操作参看:ubuntu ftp搭建。注意:需要在配置开启写入权限:vim /etc/vsftpd.conf,将write_enable=YES注释去掉,如图4

    640?wx_fmt=other

    图4

    (6) Asp.Net Core On Docker 镜像配置

           1)拉取aspnetcore镜像(2.0版本,如果要拉取最新版本将aspnetcore:2.0换成aspnetcore:latest),

      # docker pull microsoft/aspnetcore:2.0

           2) 查看镜像,确认是否拉取成功

          # docker images

    (7)使用VS建立一个Asp.Net Core WebApi 项目并勾选支持Docker项,编写Dockerfile,如图5

    640?wx_fmt=other

    640?wx_fmt=other

    640?wx_fmt=other

    图5

    (8)发布程序到服务器(这里使用Ftp发布到服务器上配置的目录中),如图6

    640?wx_fmt=other

    (9) 打包发布的应用程序的镜像(假如ftp的目录为:/homt/uftp)

    # docker build -t hub3-container:1.0 .

    (请注意后面还有一个点.)

    640?wx_fmt=other

    (10)运行docker

      # docker run --name hub3 -d -p 8088:88 hub3-container:1.0

    640?wx_fmt=other

    注意: -p 8088:88 其中8088端口为Docker的外部端口,定义在Dockerfile中的"EXPOSE"标签,88为我们的应用程序Hub3启动的端口

    (11)在浏览器访问:http://192.168.133.133:8088/api/values,如果返回结果说明已经成功。

           接下来将继续发布不超过3000行代码的基于Asp.Net Core打造一个轻量级的内部服务治理的RPC框架系列文章,敬请关注。到时会将代码全部开源。


    原文地址:https://www.jianshu.com/p/1f8010763ac8.NET社区新闻,深度好文,欢迎访问公众号文章汇总 http://www.csharpkit.com


  • 相关阅读:
    CSS3实现10种Loading效果(转)
    Editorial Board 、co-editor、ediitor、editor-in-chief的区别
    Android必知必会-使用okhttp的PUT方式上传文件
    Android项目开发填坑记-so文件引发的攻坚战
    Android开发学习之路--RxAndroid之操作符
    Libgdx教程目录
    Android开发学习之路--RxAndroid之lambda
    Android开发学习之路--RxAndroid之初体验
    Android必知必会-获取视频文件的截图、缩略图
    Android开发学习之路--Annotation注解简化view控件之初体验
  • 原文地址:https://www.cnblogs.com/hgmyz/p/12351488.html
Copyright © 2020-2023  润新知