CentOS7下Docker与.net Core 2.2

一、使用 yum 安装(CentOS 7下) 

  Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker 。

  通过 uname -r 命令查看你当前的内核版本

  

二、安装 Docker 

  从 2017 年 3 月开始 docker 在原来的基础上分为两个分支版本: Docker CE 和 Docker EE。

  Docker CE 即社区免费版,Docker EE 即企业版,强调安全,但需付费使用。

  1、移除旧的版本 

$ sudo yum remove docker                   docker-client                   docker-client-latest                   docker-common                   docker-latest                   docker-latest-logrotate                   docker-logrotate                   docker-selinux                   docker-engine-selinux                   docker-engine

  2、安装一些必要的系统工具

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

  3、添加软件源信息 

sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

  4、更新 yum 缓存

sudo yum makecache fast

  5、安装 Docker-ce

sudo yum -y install docker-ce

  6、启动 Docker 后台服务 

sudo systemctl start docker

  7、测试运行 hello-world 

[[email protected] /]# docker run hello-world

  

二、Asp.Net Core2.2 web程序

  

  dockerfile是你的应用部署到docker上所必须的配置信息,只是个不带扩展名的纯文本文件而已

  

  设置Makefile属性【始终复制

  

  Dockerfile内容为

  

 1 FROM microsoft/dotnet:2.2-aspnetcore-runtime  #基础镜像为dotnetcore
 2 MAINTAINER demo                    #作者
 3
 4 LABEL description="this is a test website"  #描述
 5 LABEL version="1.0"                 #描述
 6
 7 WORKDIR /app                    #工作目录
 8 COPY . .                      #将当前目录下的文件,复制到WORKDIR目录
 9 EXPOSE 8888                    #容器暴漏8888端口,与上一步设置的端口一致
10 ENTRYPOINT ["dotnet","demo.dll"]      #运行容器的命令

  修改Program.cs文件

 1 namespace demo
 2 {
 3     public class Program
 4     {
 5         public static void Main(string[] args)
 6         {
 7             CreateWebHostBuilder(args).Build().Run();
 8         }
 9
10         public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
11             WebHost.CreateDefaultBuilder(args)
12                 .UseUrls("http://*:8888")
13                 .UseStartup<Startup>();
14     }
15 }

  发布,文件系统

  默认位置 

demo\bin\Release\netcoreapp2.2\publish

  

三、构建镜像

  1、切换到发布目录  

[[email protected] publish]

  2、修改Makefile文件

  

  指定容器对外暴露端口80。注意,COPY .后面有空格,表示是当前位置,意思是从当前位置复制文件到/publish目录下

  3、根据当前目录下dockerfile配置文件,进行打包  

[[email protected] publish]# docker build -t demo .

  

  4、查看我们打包好的镜像。

[[email protected] publish]# docker images

  

  

四、运行docker容器

[[email protected] publish]# docker run -d -p 8888:8888 demo

   -p是进行宿主和容器之间端口的映射,(-p 宿主端口:容器端口)

   -d命令,容器就会一直运行,即使关掉终端窗口

  检验docker容器是否运行成功

  

五、测试

  本机要输Centos的IP

  

  Centos内访问localhost就可以了

  

说明

  1、配置docker开机启动

systemctl  enable docker

  2、确认容器有在运行

[[email protected] /]# docker ps

  

  CONTAINER ID:容器ID

  NAMES:自动分配的容器名称

  在容器内使用docker logs命令,查看容器内的标准输出

  3、开始/停止容器

[[email protected] /]# docker start/stop  容器id或者容器名

  4、重启docker服务,遇到此类错误

  

  原因是docker服务挂掉了 

systemctl restart docker

  

原文地址:https://www.cnblogs.com/hyunbar/p/10277100.html

时间: 2024-07-31 06:01:13

CentOS7下Docker与.net Core 2.2的相关文章

又一篇Centos7下的asp.net core部署教程

原文:又一篇Centos7下的asp.net core部署教程 历程2个多月的学习,我终于从PHP转.Net开发了. 虽然网上已经有很多关于asp.net core在linux下的部署教程了,但我还是想写一篇,主要增强我自己的记忆. 搭建的环境为Centos7 + .net core  + nginx + mysql5.7,我的网站是asp.net core后端,vue前端,数据据mysql: 第一次搭建时遇到不少的坑,我会在下面也说到 前提,你有一台可以联网,有root账号密码,有开通ssh的

centos7下docker二进制安装

问题描述: 内网离线环境下,安装docker.二进制来的还是快点,或者内网搭建yum的epel仓库! 环境: centos7.x docker-18.9.0 x86_64  static //二进制 解决方法: 1.download: https://download.docker.com/linux/static/stable/x86_64/ 2.kernel ack [root@lab-210 ~]# uname -r     //kerner3.10.+   centois7.x 内核都是

CentOS-7下Docker 17.12安装

1 参考文档 https://docs.docker.com/install/linux/docker-ce/centos/ https://download.docker.com/linux/centos/7/x86_64/stable/Packages/ 2 docker安装 $ wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-18.03.1.ce-1.el7.centos.x8

CentOS7下Docker安装

1 uname -r查看内核版本是否高于3.10 2 yum -y install docker-ce安装docker 3 systemctl start docker启动docker systemctl enable docker设置开机自动启动 4 docker run hello-word运行hello-world容器(会自动下载hello-world镜像并启动容器) other: yum remove docker-ce 卸载docker rm -rf /var/lib/docker 原

CentOS7下让Asp.Net Core的网站自动运行

一.安装Nginx yum install nginx 二.配置Nginx vi /etc/nginx/nginx.conf location / { proxy_pass http://127.0.0.1:5000; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection keep-alive; proxy_set_header Host $host; proxy_s

CentOS7下使用Docker容器化.net Core 2.2

原文:CentOS7下使用Docker容器化.net Core 2.2 一.使用 yum 安装(CentOS 7下) Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker . 通过 uname -r 命令查看你当前的内核版本 二.安装 Docker 从 2017 年 3 月开始 docker 在原来的基础上分为两个分支版本: Docker CE 和 Docker EE. Docker CE 即社区免费版,Dock

Windows下构建ASP.NET Core+Code First+Docker

小分享:我有几张阿里云优惠券,用券购买或者升级阿里云相应产品最多可以优惠五折!领券地址:https://promotion.aliyun.com/ntms/act/ambassador/sharetouser.html?userCode=ohmepe03 背景介绍 本文将会示范如何在Windows系统下基于ASP.NET Core构建跨平台服务,并通过Docker容器运行发布. 首先说一下为什么选择这一套组合: 我本人和我们Code4Thought团队关注一切具备生产力的技术和工具,话说有所了解

centos7下安装docker时出现没有安装包docker问题的解决

我在centos7下安装docker时遇到了没有安装包docker,我不知道大家是否有遇到过,是否有好的解决办法,下面把我个人的解决办法给大家奉献上,希望对大家有所帮助. 因为按照大家认为的Docker 软件包已经包括在默认的 CentOS-Extras 软件源里.因此想要安装 docker,只需要运行下面的 yum 命令: $ yum install docker -y 但是安装提示没有安装包docker 后来自己结合查阅的资料终于整理出了解决办法 我们需要在/etc/yum.repo.d/目

在CentOS7下从0开始搭建docker并发布tomcat项目

一切从0开始,我也是个小白: 1.检查你的系统是不是高于3.8的内核,如果没有请升级CentOS7或者Ubuntu 14 #uname -a 2.CentOS7下安装docker #yum -y install docker 3.查看docker版本 #docker version 4.启动docker服务 #docker service start 5.查看本地镜像 #docker images 6.如果没有本地镜像,可以下载一个centos7的镜像来作为基础运行环境 #docker pull