CentOS下使用Docker方式部署.NetCore

12 篇文章 0 订阅
7 篇文章 0 订阅

运行环境

CPU&内存:1核 2 GiB

操作系统:CentOS 7.9 64位

1、安装Docker

# 安装Docker
yum -y install docker-ce

# 查看版本,测试是否安装成功
docker version

# 启动Docker服务
sudo systemctl start docker

# 开机自启动Docker服务
sudo systemctl enable docker

# 查看Docker状态
sudo systemctl status docker

 2、 复制发布的文件到CentOS上

通过Xftp,将发布后的publish内文件复制到centos指定文件。

3、构建Dockerfile文件

在目标文件根目录新建Dockerfile文件

FROM mcr.microsoft.com/dotnet/aspnet:3.1
WORKDIR /app
EXPOSE 80
COPY . .
ENTRYPOINT ["dotnet", "WebApplication1.dll"]
# ENV ASPNETCORE_ENVIRONMENT Development

1.FROM
基于/dotnet/aspnet:3.1构建镜像
2.WORKDIR
设置工作目录为 '/app' 文件夹,即容器启动默认的文件夹
3.EXPOSE
设置Docker容器对外暴露80端口
4.COPY
将当前目录下的所有文件(除了.dockerignore排除的路径),都拷贝进入 image 文件的/app目录,这里是两个参数
5.ENTRYPOINT
使用'dotnet Core. WebApplication1.dll'来运行应用程序
6.ENV
如有需要指定环境变量,在文件加上:ENV ASPNETCORE_ENVIRONMENT Development

4、镜像发布为容器

# 进入程序的发布文件目录
cd /home/webapp

# 构建成镜像 
# -t 指定镜像名(必须小写,可以冒号指定标签如webappdocker:1.0)  
# . 表示Dockerfile所在目录(PS:注意最后的 点)
docker build -t webappdocker:1.0 .

# 查看镜像
docker images

# 镜像发布为容器
# --name 指定容器名称
# -d 指定容器后台运行 
# -p 主机(宿主)端口:容器端口(容器端口映射到主机(宿主)端口 )
# webappdocker镜像名
docker run --name webapp -d -p 5000:80 webappdocker:1.0

Docker容器的最佳实践一个容器运行一个进程。多个进程都部署在一个容器中,很多弊端。比如更新某个进程的镜像时,其他进程也会被迫重启,如果一个进程出问题导致容器挂了,所有进程都将无法访问。

总结上述:意味着一个容器就暴露一个端口,所以我们就按照默认端口80启动。

5、查看服务是否运行成功

Docker相关命令

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

# 查看docker状态
systemctl status docker 

# 重启docker
systemctl restart docker

# 删除容器
docker rm [CONTAINER_ID]

# 停用全部运行中的容器
docker stop $(docker ps -q)

# 删除所有容器(要先停用才能删除)
docker rm $(docker ps -aq)

# 查看镜像
docker images

# 删除镜像
docker rmi [IMAGE_ID]

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

# 查看容器日志
docker logs -f [CONTAINER_ID]

# 容器内访问
docker exec -t webapp_v1 curl -L localhost/home/index

# 进入容器
docker exec -it [CONTAINER_ID] bash

# 查看容器所有状态信息
docker inspect [CONTAINER_ID]

# 查看容器ip地址
docker inspect --format='{{.NetworkSettings.IPAddress}}' [CONTAINER_ID]

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值