Linux系统docker部署.net core3.1的详细步骤

此篇文章演示基本的基于docker部署.netcore服务,linux系统腾讯云ubuntu,.net core版本3.1。

1.安装docker

apt install docker.io

2.拉取.net core依赖镜像

docker pull mcr.microsoft.com/dotnet/core/aspnet:latest

3.创建.net core3.1项目

选择docker支持,会生成dockerFile配置文件如图:

4.编写dockerfile文件,经删减后为:

FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-buster-slim AS base
FROM mcr.microsoft.com/dotnet/core/sdk:3.1-buster
WORKDIR /app
EXPOSE 5000
COPY . .
ENTRYPOINT ["dotnet", "MyDockerApi.dll"]

5.发布项目到本地

注意下,dockerFile文件一定要带过来,接下来,将所有文件,压缩成zip包。。最好是zip,不然linux解压很麻烦

6.在linux系统根目录

新建(mkdir)project文件夹,进入(cd)project文件夹,继续新建myDockerApi文件夹,然后进入。

7.上传刚才的zip压缩包,并解压

上传命令:rz -y,本地选择,上传进来,解压命令:unzip -o MyDockerApi.zip

8.镜像打包

docker build -t my1api . 注意最后有一个.,

9.创建基于该镜像的docker容器,并启动

命令:docker run --name API8082 -p 8081:5000 my1api ,参数解读:

--name xxxxx:容器名字

8081:将liunx端口分配给该容器的端口

:5000:将物理机端口映射到docker程序的启动端口

my1api:使用的镜像名称

可以看到,服务已经起来了,这时候,如果外部想要访问服务,需要在腾讯云防火墙新增出站端口8081

这时候,访问服务接口:

使用命令,列出当前所有容器,状态等等:

docker container ls -a

容器的启动/停止命令:

docker start API8082(容器名称/ID)
docker stop API8082(容器名称/ID)

10.如果代码更新了,怎么办

(1)将更新好的代码上传

(2)重新build镜像

(3)停止docker容器

(4)删除docker容器 docker rm 容器名称/ID

(5)重新创建容器并启动 docker run --name API8082 -p 8081:5000 my1api

到此这篇关于Linux系统docker部署.net core3.1的文章就介绍到这了,更多相关docker部署.net core3.1内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • .Net Core自动化部署之利用docker版jenkins部署dotnetcore应用的方法

    前言 本文主要介绍了关于.Net Core自动化部署用docker版jenkins部署dotnetcore应用的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的实现步骤吧. 安装docker版jenkins 因为jenkins的docker版本本身没有 dotnetcore的环境,所以我们需要先自己动手制作下包含dotnet环境的jenkins Docker Container Dockerfile FROM jenkins/jenkins # Switch to root t

  • 详解ASP.NET Core Docker部署

    前言 在前面文章中,介绍了 ASP.NET Core在 macOS,Linux 上基于Nginx和Jexus的发布和部署,本篇文章主要是如何在Docker容器中运行ASP.NET Core应用程序. ASP.NET Nginx 发布和部署 :http://www.cnblogs.com/savorboard/p/dotnet-core-publish-nginx.html. Asp.Net Jexus 发布和部署:http://www.cnblogs.com/savorboard/p/dot-n

  • Linux服务器下利用Docker部署.net Core项目的全过程

    发布ASP.NET Core项目 和普通的项目发布一样,将项目发布到目标文件夹中 构建Dockerfile文件 在目标文件根目录新建Dockerfile文件(没有后缀) FROM microsoft/dotnet//基于'microsoft/dotnet' 来构建镜像 COPY . /app //拷贝项目文件夹中的所有文件到docker容器中的app文件夹 这里是两个参数 WORKDIR /app //设置工作目录为 '/app' 文件夹,即容器启动默认的文件夹 EXPOSE 80 //设置Do

  • Centos7+Docker+Jenkins+ASP.NET Core 2.0自动化发布与部署的实现

    前言 Docker一直很火热,一直想把原本的Jenkins自动部署工具搬到Docker上面,无奈今年一直忙于各种事情,迟迟未实施这个事情,正好迎来了dotnet core 2.0 的正式发布,升级项目的同时,顺便直接将Jenkins搬到Docker上.为什么要写这篇文章呢?因为找过相关的资料,大多数文章都是基于Ubuntu 安装.net core 又或者 GitLab 进行持续集成 自动部署等等等,并未有人尝试过Centos7.3 上部署 Jenkins 并且 构建 ASP.NET CORE 2

  • Linux CentOS下docker部署Asp.Net6 Core

    1.项目设置 设置dockerfile属性为"始终复制", 修改dockerfile文件内容为: FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base WORKDIR /web COPY . . EXPOSE 80 EXPOSE 443 FROM base AS final ENTRYPOINT ["dotnet", "OneZhanMVC.dll"] ps:若项目没有dockerfile右键项目,点击

  • docker部署Asp.net core应用的完整步骤

    1 容器概念 使用Docker前我们首先要简单了解一下容器的概念.MSDN上有一张虚拟机和容器的对比图,很好的展示了虚拟机和容器的区别,如下所示,虚拟机包括应用程序.必需的库或二进制文件以及完整的来宾操作系统,每台虚拟机都有一个单独的内核,我们完全可以把虚拟机看做是一台真实的物理机.容器包括应用程序及其所有依赖项,与其他容器共享 OS 内核,容器在主机操作系统上作为独立进程运行,我们可以把容器看做是一个应用沙盒. 我们经常会遇到"我机器上可以运行"的问题吧,然后部署到其他机器时就遇到了

  • Linux系统docker部署.net core3.1的详细步骤

    此篇文章演示基本的基于docker部署.netcore服务,linux系统腾讯云ubuntu,.net core版本3.1. 1.安装docker apt install docker.io 2.拉取.net core依赖镜像 docker pull mcr.microsoft.com/dotnet/core/aspnet:latest 3.创建.net core3.1项目 选择docker支持,会生成dockerFile配置文件如图: 4.编写dockerfile文件,经删减后为: FROM

  • Linux系统Docker 部署 ASP.NET Core应用的流程分析

    一.系统环境 1.腾讯云轻量应用服务器CentOS7.6 二.操作流程及途中遇到的问题 1.SSH方式远程Linux ssh <username>@<IP address or domain name> 如果遇到下图问题: 出现这个问题的原因:known_hosts是记录远程主机的公钥的文件,之前重装个系统,而保存的公钥还是未重装系统的系统公钥,在ssh链接的时候首先会验证公钥,如果公钥不对,那么就会报错 解决方法:使用shh-keygen 命令ssh-keygen -R IP,执

  • Linux系统下部署项目的设置方法

    一.修改防火墙设置,开放对应的端口 修改Linux系统防火墙配置需要修改 /etc/sysconfig/iptables 这个文件,如果要开放哪个端口,在里面添加一条 -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT 就可以了,其中 8080 是要开放的端口号,然后重新启动linux的防火墙服务 二.安装jdk 1.检查一下系统中的jdk版本 [root@localhost softw

  • 在linux系统下部署selenium爬虫程序介绍

    目录 前言 一.selenium是什么? 二.使用步骤 1.引入库 2.测试代码 三.部署程序 1.安装chrome 2.安装chromedriver驱动 3.运行测试代码 总结 前言 我这里是工作需要把selenium 爬虫程序部署到Linux 服务器上面 顺便跟大家交流一下 如果有兴趣的话可以看一下 一.selenium是什么? Selenium是一个用于Web应用程序测试的工具.Selenium测试直接运行在浏览器中,就像真正的用户在操作一样, 爬虫用它来抓取一些js动态加载的数据 二.使

  • 使用docker部署hadoop集群的详细教程

    最近要在公司里搭建一个hadoop测试集群,于是采用docker来快速部署hadoop集群. 0. 写在前面 网上也已经有很多教程了,但是其中都有不少坑,在此记录一下自己安装的过程. 目标:使用docker搭建一个一主两从三台机器的hadoop2.7.7版本的集群 准备: 首先要有一台内存8G以上的centos7机器,我用的是阿里云主机. 其次将jdk和hadoop包上传到服务器中. 我安装的是hadoop2.7.7.包给大家准备好了,链接:https://pan.baidu.com/s/15n

  • 基于Docker部署GitLab环境搭建的方法步骤

    注意:建议虚拟机内存2G以上,一定要配置阿里云的加速镜像 1.下载镜像文件 docker pull beginor/gitlab-ce:11.0.1-ce.0 2.创建GitLab 的配置 (etc) . 日志 (log) .数据 (data) 放到容器之外, 便于日后升级 mkdir -p /mnt/gitlab/etc mkdir -p /mnt/gitlab/log mkdir -p /mnt/gitlab/data 3.运行GitLab容器 进入/mnt/gitlab/etc目录,运行一

  • 使用Docker部署Spring Boot项目的实现步骤

    目录 创建一个简单的springboot项目 一.在 pom.xml 中 ,使用 Spring Boot 2.2.10 相关依赖 二.添加 web 和测试依赖 三.创建一个 DockerController,在其中有一个hello()方法,访问时返回:hello,nihao 四.启动类 使用 Docker 部署 Spring Boot 项目 一.将项目打成jar包,拷贝到服务器上,测试一下 二.看到 Spring Boot 的启动日志后表明环境配置没有问题,编辑Dockerfile文件: 三.接

  • linux下vsftpd的安装及配置使用详细步骤(推荐)

    vsftpd 是"very secure FTP daemon"的缩写,安全性是它的一个最大的特点. vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux.BSD.Solaris. HP-UNIX等系统上面,是一个完全免费的.开放源代码的ftp服务器软件,支持很多其他的 FTP 服务器所不支持的特征. 比如:非常高的安全性需求.带宽限制.良好的可伸缩性.可创建虚拟用户.支持IPv6.速率高等. vsftpd是一款在Linux发行版中最受推崇的FT

  • Linux上通过binlog文件恢复mysql数据库详细步骤

     一.binlog 介绍 服务器的二进制日志记录着该数据库的所有增删改的操作日志(前提是要在自己的服务器上开启binlog),还包括了这些操作的执行时间.为了显示这些二进制内容,我们可以使用mysqlbinlog命令来查看. 用途1:主从同步 用途2:恢复数据库(也是线上出现一次数据库文件丢失后,才对这个有所了解并学习的) mysqlbinlog命令用法:shell> mysqlbinlog [options] log_file ... <!--[if !supportLists]-->

  • linux系统下部署项目访问报404错误的解决方法

    碰到了一个比较奇怪的问题,我在linux系统上安装了一个tomcat服务器,我将一个项目部署到了这个服务器上,然后我去访问这个tomcat,访问成功: 紧接着,我访问我部署项目的index.jsp页面,出现了404: 找了好久问题,最后发现当我把web.xml文件中的filter等注释掉后,可以正常访问: 注释掉后,我又访问了一下,是可以访问的: 暂时还没太明白这是什么问题,我又找了一个一样的项目,这次是可以访问的,具体原因还不清楚,本人觉得是文件权限问题,但是查了一下权限是一样的,可能和roo

随机推荐