Docker部署.net WebAPI项目

在Linux环境中部署.net webAPI项目有两种方式
一是传统方式部署,二是利用Docker部署,今天记录一下利用Docker方式部署。

1.安装Docker

1.1、卸载 Docker
  在安装 Docker 之前,我们应该确定当前的机器上是否已经安装好了 Docker,为了防止与现在安装的 Docker CE 发生冲突,这里我们先卸载掉以前版本的 Docker,如果你确定你的机器上并没有安装 Docker 的话此步可以跳过。
  在 Linux 中可以使用 \ 加 Enter 在输入很长很长的语句时进行换行,这里和后面的命令都是采用这样的方式。
sudo yum remove docker \
  docker-client \
  docker-client-latest \
  docker-common \
  docker-latest \
  docker-latest-logrotate \
  docker-logrotate \
  docker-engine
1.2、添加 yum 源
  在安装 Docker CE 的方式上,我是采用将 Docker CE 的源添加到 yum 源中,之后我们就可以直接使用 yum install 安装 Docker CE,整个的安装过程如下。
# 安装工具包从而可以让我们在 yum 中添加别的仓储源
sudo yum install -y yum-utils \
  device-mapper-persistent-data \
  lvm2

# 设置 docker ce 的稳定库地址
sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

# 安装 docker ce
sudo yum install docker-ce docker-ce-cli containerd.io

1.3、设置开机自启
  当 Docker 已经在我们的机器上安装完成后,我们就可以将 Docker 设置成机器的自启服务,这样,如果出现服务器重启的情况下,我们的 Docker 也可以随服务器的重启自动启动 Docker 服务。
# 启动 Docker 服务并允许开机自启
sudo systemctl start docker
sudo systemctl enable docker
1.4、验证安装是否成功(有client和service两部分表示docker安装启动都成功了)
docker version

2.制作镜像

  1. 编写Dockerfile文件,上传项目
FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-buster-slim AS base
WORKDIR /app
COPY . /app
EXPOSE 80
ENTRYPOINT ["dotnet", "api.dll"]
  1. 构造镜像文件
docker build -t api .       --生成项目镜像文件

3.运行容器

docker run -it -p 5000:5000 --restart=always  --name api -d api

4.利用nginx代理

5.验证部署是否成功

posted @ 2022-07-24 16:00  依然范特彪  阅读(612)  评论(0)    收藏  举报