Docker deployment Net Core

A, docker Installation and Setup

1  # CentOS installation package has been placed on Docker Extras source software, you can directly use
 2 yum install docker-IO - the y-  
 3  
4  # View docker version Version 
 5 docker - v 
 6  
7  # Docker service open
 8  systemctl Start docker.service 
 . 9  
10  # Docker boot service
 . 11  systemctl enable docker.service 
 12 is  
13 is  # view Docker service startup state
 14  systemctl status docker.service
 15  
16  # Docker restart service
 . 17 systemctl the restart docker.service

 

Second, the new Net Core Program

1, the new Net Core project. Note that support does not start Docker

 

2, released new project (the target runtime: Portable)

 

3. Create a new file in the file Dockerfile after the release of the folder (no suffix)

Probably reads as follows:

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

 

Guess you like

Origin www.cnblogs.com/songl/p/11128012.html