webapi通过docker部署到Linux的两种方式
docker
安装官网
删除docker
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
安装
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
查看是否安装成功
sudo systemctl start docker
sudo docker run hello-world
设置开机自启
sudo systemctl enable docker
二、创建镜像
源代码创建
创建WebApi项目
选择将 解决方案 和 **项目 ** 放到同一个目录下,点击下一步
选择启用Docker,点击创建
将源文件直接复制到服务器,然后进入 进入到解决方案目录下开始创建镜像
创建镜像
例子:docker -t 名称:版本号 .
docker -t dockerapi:1.0.0 .
启动容器
例子:docker run --name 名称 -itd --restart unless-stopped -p 外部访问端口:项目启动端口 启动镜像
docker run --name docker1.0.0 -it --restart unless-stopped -p 8888:8080 dockerapi:1.0.0
浏览器访问
服务器ip:8888/swagger/weatherforecast
发布之后创建
创建好webapi项目
修改配置文件,配置端口(appsettings.json)
{
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft.AspNetCore": "Warning"
}
},
"AllowedHosts": "*",
"Kestrel": {
"Endpoints": {
"Http": {"Url": "http://*:8060"}
}
}
}点击发布
进入发布后的文件夹
创建dockerfile配置文件,将下边内容复制到文件中,并修改配置(Dockerfile)
#See https://aka.ms/customizecontainer to learn how to customize your debug container and how Visual Studio uses this Dockerfile to build your images for faster debugging. FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS base
USER app
WORKDIR /app
#端口
EXPOSE 8060 FROM base AS final
WORKDIR /app
COPY . /app
#启动命令(括号中为启动的项目名称)
ENTRYPOINT ["./LinuxApi"]
将发布后的文件上传到服务器
创建镜像
例子:docker -t 名称:版本号 .
docker -t linuxapi:1.0.0 .
创建容器
例子:docker run --name 名称 -itd --restart unless-stopped -p 外部访问端口:项目启动端口 启动镜像
docker run --name linuxapi1.0.0 -it --restart unless-stopped -p 7777:8060 linuxapi:1.0.0
浏览器访问
服务器ip:7777/swagger/weatherforecas
三、其他命令
镜像
创建
例子:docker -t 名称:版本号 .
docker -t linuxapi:1.0.0 .
删除
例子:docker rmi 名称:版本号
docker rmi linuxapi:1.0.0
容器
创建
例子:docker run --name 名称 -itd --restart 重启规则 -p 外部访问端口:项目启动端口 启动镜像
docker run --name linuxapi1.0.0 -it --restart unless-stopped -p 7777:8060 linuxapi:1.0.0
删除
例子:docker remove 容器id或者容器名称
docker remove linuxapi1.0.0
webapi通过docker部署到Linux的两种方式的更多相关文章
- WebApi服务Uri加密及验证的两种方式
最近的一个项目要求服务端与UI层分离,业务层以WebApi方式向外提供所有业务服务,服务在数据保密性方面提出了要求,主要包括: 1:客户端认证: 2:服务请求超时(默认5分钟): 3:服务Get请求的 ...
- Linux部署springboot项目,两种方式
部署jar包(官方推荐) 在linux服务器上运行Jar文件时通常的方法是: $ java -jar test.jar 这种方式特点是ssh窗口关闭时,程序中止运行.或者是运行时没法切出去执行其他任务 ...
- 使用使用dockerfile构建webapi镜像然后使用link和bridge两种方式进行桥接
首先新增一个webapi的项目 项目核心代码 UserContext using Microsoft.EntityFrameworkCore; using System; using System.C ...
- Tomcat部署Web应用的两种方式
WEB工程目录结构 部署方式一:此种方式部署,jsp页面修改后,不能动态更新,需要重新部署才能看到效果.不过可以配置动态更新实现. 部署方式二:此种方式部署,jsp修改后,直接在页面可以看到效果.(因 ...
- eclipse下部署web工程的两种方式
习惯了Eclipse 的开发,就觉得不想那么懒去用MyEclipse傻瓜式的部署工程. 第一种,手动部署工程. 情况一:如果工程目录在tomcat目录的webapp目录下,这种情况就不需要有工程部署的 ...
- docker之网络桥接的两种方式
第一种:直接敲命令方式配置安装网桥管理工具包:bridge-utile # yum install bridge-utils -y 1.先查看ip 是否有br0ip a2.brctl show 3使用 ...
- k8s 创建资源的两种方式 - 每天5分钟玩转 Docker 容器技术(124)
命令 vs 配置文件 Kubernetes 支持两种方式创建资源: 1. 用 kubectl 命令直接创建,比如: kubectl run nginx-deployment --image=nginx ...
- 制作Docker镜像的两种方式
此文已由作者朱笑天授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 一.使用docker commit命令制作docker镜像 1. pull一个centos6.6的基础镜像, ...
- linux内核分析作业4:使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用
系统调用:库函数封装了系统调用,通过库函数和系统调用打交道 用户态:低级别执行状态,代码的掌控范围会受到限制. 内核态:高执行级别,代码可移植性特权指令,访问任意物理地址 为什么划分级别:如果全部特权 ...
- 云服务器 ECS Linux 服务器修改时区的两种方式
在云服务器 ECS Linux 系统中,以 Centos6.5 为例,可以通过如下两种方式,修改系统时区: 可以使用命令 tzselect,修改时区.操作示例: [root@localhost ~]# ...
随机推荐
- webgl 系列
webgl 背景 工作所需... 目录 初识 WebGL 绘制一个点 三角形 变换矩阵和动画 渐变三角形 绘制猫 着色器语言
- springboot 实现拦截的 3 种方式介绍及异步执行的思考
springboot 拦截方式 实际项目中,我们经常需要输出请求参数,响应结果,方法耗时,统一的权限校验等. 本文首先为大家介绍 HTTP 请求中三种常见的拦截实现,并且比较一下其中的差异. (1)基 ...
- 300ms点击延迟
300ms点击延迟 移动端的300ms点击延迟是因为移动端可以进行双击缩放的操作,因此浏览器在click之后要等待300ms,看用户有没有下一次点击,也就是判断这次操作是单击还是双击.如果通过监听to ...
- 虚拟化技术VirtualBox和vagrant基本使用
虚拟化技术VirtualBox和vagrant基本使用 1.首先安装VirtualBox 可以去官网下载 https://www.virtualbox.org/ 2.安装vagrant(根据自己电脑得 ...
- U盘安装win7提示缺少所需的CD/DVD驱动器设备驱动程序
问题: 最近使用U盘启动盘安装win7,系统弹出提示框: 解决方法: U盘别插在usb3.0的口(蓝色),换成一个usb2.0的口就可以了
- IDA 反汇编 explorer
之前写过一篇关于 IDA 在无 dmp 文件下如何定位到崩溃点的文章,由于其中涉及到公司项目,就仅限自己看了 正好今天看到一篇关于火绒软件误杀 explorer 的文章,并且有相关的复现过程 文章已经 ...
- vscode中python类型注解插件及自动格式化
# 插件名称 Python Type Hint # 如何ctrl+s保存时格式化,推荐安装yapf包 (flake8貌似不支持有类型注解的) 1.安装yapf包:pip install yapf 2. ...
- java学生管理系统(界面版)
运行截图 项目说明: 本系统界面我个人就从简设计了,本来打算使用windowbuilder插件设计的,可想到使用windowbuilder插件之后导致代码冗余,会影响到代码可读性,可能对小白不友好.虽 ...
- Python函数每日一讲 - 一文让你彻底明白hasattr函数的使用
引言 在Python编程中,经常会遇到需要判断对象是否具有某个属性的情况.这时候就可以用到Python内置函数 hasattr().本文将深入探讨 hasattr() 函数的使用方法及其在实际编程中的 ...
- proc_sys_reset 复位时序
proc_sys_reset 模块时序 下面为仿真时序,这里做一个record , 后面有使用问题可以参考该时序: 点击查看代码 module test( ); bit slowest_sync_cl ...