docker 部署.netcore api
1、先配置程序运行的端口,端口的配置可以在这里写死也可以通过host文件配置,自行解决

2、添加Dockerfile文件,设置文件始终复制或者较新复制,并编写shell脚本

3、发布程序,可以通过ftp发布到Liunx系统中,我放在Liunx系统中的位置为 /home/ftp/testapi/文件夹下

4、在ubuntu18.04系统中进入到发布的目录下

5、创建镜像,执行命令 docker build -t testapi:1.1 . 后面的这个"."不能丢,代表是执行当前目录下的Dockerfile文件,该需要等待拉取 dotnet:2.2-aspnetcore-runtime镜像(会耗点时间),第一次很慢,以后再创建镜像的时候不会再去从官网拉取了,直接使用本地的dotnet:2.2-aspnetcore-runtime镜像,以后都会很快
testapi:1.1 :代表镜像名称是testapi ,版本是1.1 如果不写1.1代表着是latest版本
6、创建完之后使用 docker images 查看创建的镜像
7、运行容器 使用 docker run -d --name mytestapi -p 3800:3800 -v /etc/timezone:/etc/timezone -v /etc/localtime:/etc/localtime -v /home/ftp/testapi/logs:/app/logs --restart=always testapi
-v /etc/timezone:/etc/timezone -v /etc/localtime:/etc/localtime 将本地的时区文件挂载在容器的相应文件,这样的话就让容器内的时区和宿主机时区一致,在中国东八区
--restart=always 开机自动启动
-v /home/ftp/testapi/logs:/app/logs 将本地自己定义的 /home/ftp/testapi/logs目录映射到 /app/logs目录。这样方便自己查看日志 /app 目录就是容器内部项目所在的文件夹,上面 Dockerfile设置的文件夹,
-p 3800:3800 将容器的3800端口映射到宿主机的3800端口用于外部能访问
8、通过接口访问 localhost:3800/api/values


浙公网安备 33010602011771号