Docker安装部署Net Core实现过程解析

一、docker 安装及设置

#安装 CentOS已经将Docker软件包放在了Extras软件源中,直接利用即可
yum install docker-io -y

#查看docker的版本 version
docker -v

#开启Docker服务
systemctl start docker.service

#开机启动Docker服务
systemctl enable docker.service

#查看Docker服务启动状态
systemctl status docker.service

#重启Docker服务
systemctl restart docker.service

二、新建Net Core 程序

1、新建Net Core 项目。注意不启动Docker 支持

2、发布新建的项目(目标运行时:可移植)

3、在发布后的文件夹中新建一个Dockerfile 文件(没有后缀)

大概内容如下:

FROM microsoft/dotnet:2.1-aspnetcore-runtime  //注意和你的版本要匹配
WORKDIR /app
COPY . . //将当前目录下的所有文件(除了.dockerignore排除的路径),都拷贝进入 image 文件的/app目录。
EXPOSE 5000 //端口号(将容器 5000 端口暴露出来, 允许外部连接这个端口。)
//EXPOSE 443 //Https 端口开启
ENTRYPOINT ["dotnet", "DockerDemo5.dll"] //运行的程序集 改成你自己的

三、上传发布后的项目到Linux服务器(CentOS)

1、进入程序的发布目录

#进入到程序的发布目标
cd /data/web/mydocker

#创建 image文件 (-t参数用来指定 image 文件的名字,后面还可以用冒号指定标签 PS:注意最后的 点)
docker build -t aspnetcoredocker1.1 . 

#生成容器,每运行一次,就会新建一个容器(这里的5000:5000 代表把容器内的5000端口映射到你主机的5000端口,容器端口在后)
docker run -it -p 5000:5000 aspnetcoredocker1.1
#docker run -it -p 5000:5000 aspnetcoredocker1.1:TAG  // 默认TAG是latest

2、直接访问就可以了

3、docker 容器自动启动(在容器退出或断电开机后,docker可以通过在容器创建时的 --restart参数来指定重启策略)

# 设置启动策略
docker run --restart always -it -p 5000:5000 aspnetcoredocker1.1

#如果容器已经被创建,我们想要修改容器的重启策略
docker update --restart always 3ec28be7254a //容器ID

# --restart 多个参数值选择
no 不自动重启容器. (默认值)
on-failure 容器发生error而退出(容器退出状态不为0)重启容器,可以指定重启的最大次数,如:on-failure:10
unless-stopped 在容器已经stop掉或Docker stoped/restarted的时候才重启容器,手动stop的不算always 在容器已经stop掉或Docker stoped/restarted的时候才重启容器

4、docker 相关命令

镜像文件和容器命令

#查看所有镜像
docker images

#删除一个imageid的镜像
docker rmi [IMAE_ID] 

#删除所有镜像
sudo docker rmi $(docker images -q) 

#查看所有容器运行状态
docker ps -a
docker container ls -all

#删除一个containerid的容器(实例)
docker rm 6f0c67de4b72 

#删除所有容器
docker rm $(sudo docker ps -a -q)

容器日志

#查看指定时间后的日志,只显示最后100行:
docker logs -f -t --since="2019-06-08" --tail=100 CONTAINER_ID

#查看某时间之后的日志:
docker logs -t --since="2019-06-08" CONTAINER_ID

#查看某时间段日志:
docker logs -t --since="2019-06-08" --until "2019-06-09" CONTAINER_ID

#查看最近30分钟的日志:
docker logs --since 30m CONTAINER_ID

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • 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

  • 详解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

  • Docker结合.Net Core的初步使用教程

    前言 Docker是一项比较流行的容器化技术,可以让开发者将应用以及应用依赖的环境,依赖包一起打包到容器中,然后部署容器到生产环境就可以了,解决了应用程序部署到不同服务器环境带来的问题(很多开发人员都遇到过应用程序在自己本地服务器跑的好好的,部署到生产环境就运行不起来,各种奇葩的异常),实现了"一次构建,处处运行". 官方为我们提供了针对不同系统的Docker版本,今天我们基于windows系统简单介绍下如何使用. Windows部署Docker 目前官方发布的Docker桌面版,仅支

  • .NETCore Docker实现容器化与私有镜像仓库管理

    一.Docker介绍 Docker是用Go语言编写基于Linux操作系统的一些特性开发的,其提供了操作系统级别的抽象,是一种容器管理技术,它隔离了应用程序对基础架构(操作系统等)的依赖.相较于虚拟机而言,Docker共享的是宿主机的硬件资源,使用容器来提供独立的运行环境来运行应用.虚拟机则是基于Supervisor(虚拟机管理程序)使用虚拟化技术来提供隔离的虚拟机,在虚拟机的操作系统上提供运行环境!虽然两者都提供了很好的资源隔离,但很明显Docker的虚拟化开销更低! Docker涉及了三个核心

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

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

  • Visual studio 2017如何发布dotnet core到docker

    docker的好处不用多说,有不了解的可移步<docker入门>,作为一个.net方面的老鸟也想早点搭上docker末班车,减少布署中的各种坑.以下我是在Visual Studio 2017正式版发布后(其实VS2015也是可以的),完全跑起来的步骤. 第一步:安装docker 下载地址:https://www.docker.com/docker-windows,下载的同时先去"控制面板""程序"里启用"Hyper-V",启用完了,下

  • Docker安装部署Net Core实现过程解析

    一.docker 安装及设置 #安装 CentOS已经将Docker软件包放在了Extras软件源中,直接利用即可 yum install docker-io -y #查看docker的版本 version docker -v #开启Docker服务 systemctl start docker.service #开机启动Docker服务 systemctl enable docker.service #查看Docker服务启动状态 systemctl status docker.service

  • docker安装部署 onlyoffice的详细过程

    0. 系统要求 中央处理器 I5-10400F以上 内存 16 GB,最佳32G内存 硬盘 至少40 GB的可用空间 1:安装Docker Desktop 2:进入BIOS设置CPU的虚拟化 https://jingyan.baidu.com/article/ab0b56305f2882c15afa7dda.html 3:启动Docker desktop 报错解决:https://www.jb51.net/article/214820.htm 3:cmd进入,使用命令安装onlyoffice 安

  • Docker安装部署分布式数据库 OceanBase的详细过程

    目录 前言 ️ 1.什么是OceanBase ️ 2.硬件要求 ️ 3.docker部署OceanBase 3.1 下载ob docker镜像 3.2 创建容器 3.3 obd工具查看集群及启动 3.4 登录ob数据库并创建租户 3.5 登录obmysql tenant并创建数据库及表等 前言 快速的体验 OceanBase 的 自动化部署过程,以及了解 OceanBase 集群安装成功后的目录特点和使用方法 ️ 1.什么是OceanBase OceanBase是由蚂蚁集团完全自主研发的国产原生

  • Docker安装部署Mysql8的过程(以作数据持久化)

    目录 1.创建容器并进行持久化处理 2.配置远程连接并尝试 1.创建容器并进行持久化处理 #拉取镜像 docker pull mysql:8.0.20 #启动镜像,用于拷贝配置文件到宿主机 docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:8.0.20 #查看是否启动成功 docker ps -a #新建挂载目录并拷贝配置文件 mkdir -p /mysqldata/ docker cp mys

  • CentOS7.6系统下Docker安装部署教程

    目录 前提说明 查看系统版本命令 Docker 版本 Docker 安装 Docker 部署 Docker 阿里云镜像加速 前提说明 目前,Centos 仅发行版本中的内核支持 Docker. Docker 运行在 Centos-7 上,要求系统为64位.系统内核版本位3.10以上. Docker 运行在 Centos-6.5 或更高的版本,要求系统为64位.系统内核版本位2.6.32-431 或者更高版本 查看系统版本命令 [root@docker ~]# uname -r 3.10.0-95

  • springboot使用war包部署到外部tomcat过程解析

    这篇文章主要介绍了springboot使用war包部署到外部tomcat过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 如果是war包部署到外部tomcat,需要增加SpringBootServletInitializer子类,并重写其configure方法,或者将main函数所在的类继承SpringBootServletInitializer子类,并重写configure方法. @SpringBootApplication //继承S

  • docker 安装部署多个MySQL的实现步骤

    目录 环境配置 安装MySQL 修改MySQL加密方式 安装第二个MySQL 环境配置 本地操作系统:Win10虚拟机的操作系统:CentOS Stream 8已安装docker,可以参考详细安装教程 安装MySQL 如果docker安装成功,我们可以直接使用指令启动一个docker运行MySQL服务,指令如下: docker run -p 3306:3306 --name mysql8.0 -e MYSQL_ROOT_PASSWORD=1234 -d mysql 指令参数说明: run:启动d

  • 使用docker安装部署NextCloud私人网盘的方法步骤

    目录 1.查询并下载NextCloud镜像 2.创建并启动NextCloud容器 3.访问NextCloudWEB界面 4.参考链接 1.查询并下载NextCloud镜像 执行命令 docker search nextcloud docker pull nextcloud 演示操作 # 查询nextcloud镜像 [root@docker ~]# docker search nextcloud NAME DESCRIPTION STARS OFFICIAL AUTOMATED nextcloud

  • Docker安装部署单机版Rocket及基础讲解

    目录 前言 优缺点 常见名词介绍 单机版安装部署 集群部署 四种集群部署方式 集群部署 前言 目前主流的MQ主要是Rocketmq.kafka.Rabbitmq,Rocketmq相比于Rabbitmq.kafka具有主要优势特性有: 支持事务消息(能够解决分布式事务的问题) 支持顺序消息(底层已经使用内存队列实现) 支持consumer端tag过滤,减少不必要的网络传输 Rocketmq就是对kafka实现的升级版本. 优缺点 RocketMQ 优点 单机吞吐量:十万级 可用性:非常高,分布式架

  • 云服务器(Linux)安装部署Kafka的详细过程

    目录 云服务器(Linux)安装部署Kafka 前期准备 下载安装包 上载安装包到云服务器 配置kafka 开放云服务器端口 开放linux防火墙端口 启动kafka服务 测试单机连通性 Springboot连接kafak 云服务器(Linux)安装部署Kafka 前期准备 kafka的安装需要依赖于jdk,需要在服务器上提前安装好该环境,这里使用用jdk1.8. 下载安装包 官网地址: 较新的版本已自带Zookeeper,无需额外下载.这里使用3.2.0做演示. 注意要下载Binary dow

随机推荐