当前位置: 首页 > news >正文

Docker容器化部署.net core API

1.为API集成Docker环境。(VS自带,傻瓜式操作)

1.1 点击项目,右键,添加,选择Docker支持
在这里插入图片描述
1.2 找到项目根目录中的Dockerfile文件,这是VS刚刚帮我们自动生成的。进入和做如图标红地方修改。
把文件名用.代替(因为当前文件在根目录了)。
在这里插入图片描述

2.安装Docker,执行相应的命令。

2.1 进入docker官网,下载安装包。解压后下一步,记得开启虚拟化服务。具体百度一大把。
2.2 安装好后 记得配置国内下载镜像的地址,不然下载会很慢。 打开设置:
在这里插入图片描述

  "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn","http://hub-mirror.c.163.com","https://registry.docker-cn.com"]

3.执行命令,进行容器化部署。

3.1 进入到项目根目录文件夹,然后cmd 回车 如图:
在这里插入图片描述
3.2 执行容器初始化命令 docker build -t fakexiechengapi . 其中fakexiechengapi为容器名称。自己随便起。然后回车,它会自动对相应的镜像拉取。直到看到Finished 如图:
在这里插入图片描述

3.3 执行docker run -d --name fakexiechengapi -p 8080:80 fakexiechengapi 运行刚刚创建好的容器。fakexiechengapi是刚刚的容器名称。

3.3.1 拉取sql server 镜像
命令:docker pull mcr.microsoft.com/mssql/server:2017-latest
运行镜像:docker run -e "ACCEPT_EULA=Y" -e "SA_PASSWORD=1qazXSW@" -p 1433:1433 --name sqlserver2017 -d mcr.microsoft.com/mssql/server:2017-latest
参数解释:

-e "ACCEPT_EULA=Y":默认选择同意协议许可证-e "SA_PASSWORD=qwe20211114.":设置连接密码为qwe20211114.-p 1433:1433: 宿主机端口映射到容器端口(前者为宿主机)--name sqlserver2017:容器别名-d: 后台运行mcr.microsoft.com/mssql/server:2017-latest:镜像名称:标签

进入容器:docker exec -it sqlserver2017 /bin/bash
连接数据库: /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P "1qazXSW@"
参考
此时可以直接通过sql管理工具去连接数据库镜像了。连接地址就是本地ip,账号默认sa,密码就是刚刚上面设置的密码。如图:
在这里插入图片描述
查看docker安装了哪些镜像:docker images
在这里插入图片描述

注意数据库必坑点:

docker拉去数据库镜像后,会自动给该容器分配一个虚拟IP。我们通过以下命令去查看:docker inspect bridge
找打名称为sqlserve的容器。我们可以看到虚拟IP为172.17.0.2
在这里插入图片描述
注意,我们程序中的连接字符串的IP 必须要用这个虚拟IP。
如下,为我的连接字符串:

 "ConnectionString": "Data Source=172.17.0.2;Initial Catalog=FakexiechengDb;User Id=sa;Password=密码"

3.4 此时容器就在运行了。我们可以在docker客户端进行查看。也可以通过命令查看 docker ps
在这里插入图片描述
在这里插入图片描述
到此我们的容器化部署完成。

Docker其他命令大全:
docker build -t fakexiechengapi . 容器初始化
docker run -d --name fakexiechengapi -p 8080:80 fakexiechengapi 运行容器
docker ps 查看运行的容器
docker logs fakexiechengapi 查看容器日志
docker inspect bridge 查看虚拟IP
docker images 查看安装了哪些镜像
docker rm 149f8cbe93a5 删除容器,其中id号可以通过docker ps命令查看
docker stop 149f8cbe93a5 暂停容器

其他要用的百度吧。

相关文章:

Docker容器化部署.net core API

1.为API集成Docker环境。(VS自带,傻瓜式操作) 1.1 点击项目,右键,添加,选择Docker支持 1.2 找到项目根目录中的Dockerfile文件,这是VS刚刚帮我们自动生成的。进入和做如图标红地方修改。 把文…...

springcloud 服务调用feign、熔断hystrix、网关gateway

回归cloud的学习,对于springcloud的架构与原理以及性能的分析我们都在之前的文章里写过:springcloud架构的认识我们之前测试过eureka服务注册功能,它能很好的保存服务之间的通讯关系,是维系微服务通讯网之间的电话本,同…...

《C++ Primer》 第十二章 动态内存

《C Primer》 第十二章 动态内存 动态内存与智能指针 shared_ptr允许多个指针指向同一个对象;unique_ptr则“独占”所指向的对象,weak_ptr指向shared_ptr所管理的对象。这三种类型都定义在memory头文件中。 shared_ptr类:默认初始化的智能…...

多个关键字用or、and、包含、不包含动态拼接为正则表达式和SQL查询条件

目录前言校验思路1、存储方式2、实现图一实现图二实现结果最后前言 不知道大家有没有做过这种需求:在某字符串中,根据多个关键字去判断这串字符串是否满足条件。如下图: 亦或是 如果说要根据图二的关键字去数据库中查询符合条件的数据&a…...

初始Linux操作系统

个人简介:云计算网络运维专业人员,了解运维知识,掌握TCP/IP协议,每天分享网络运维知识与技能。座右铭:海不辞水,故能成其大;山不辞石,故能成其高。个人主页:小李会科技的…...

【算法数据结构体系篇class12、13】:二叉树

一、判断二叉树是否是完全二叉树/*** 判断二叉树是否是完全二叉树** //判断层序遍历过程如果节点有右子树 没有左子树 那么就不是完全二叉树* //判断层序遍历过程如果遇到第一个节点是没有左或右子树的,也就是只有一个子节点或者没有,那么再往后层序遍历…...

数字IC手撕代码--联发科(总线访问仲裁)

题目描述当A、B两组的信号请求访问某个模块时,为了保证正确的访问,需要对这些信号进行仲裁。请用Verilog实现一个仲裁器,对两组请求信号进行仲后,要求:协议如图所示,请求方发送req(request&…...

白盒测试复习重点

白盒测试白盒测试之逻辑覆盖法逻辑覆盖用例设计方法1.语句覆盖2.判定覆盖(分支覆盖)3.条件覆盖4.判定条件覆盖5.条件组合覆盖6.路径覆盖白盒测试之基本路径测试法基本路径测试方法的步骤1.根据程序流程图画控制流图2.计算圈复杂度3.导出测试用例4.准备测试用例5.例题白盒测试总…...

学习C++这几个网站足矣

文章目录cppreferencecplusplusquick-bench[C 之父的网站](https://www.stroustrup.com/bs_faq.html)C提案[Cpp Core Guidelines](http://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines)[C Super-FAQ](https://isocpp.org/faq)[learn c](https://www.learncpp.com/)[A…...

第十四届蓝桥杯模拟赛(第三期)——C语言版

1.找最小数 问题描述: 请找到一个大于 2022 的最小数&#xff0c;这个数转换成十六进制之后&#xff0c;所有的数位&#xff08;不含前导 0&#xff09;都为字母&#xff08;A 到 F&#xff09;。 请将这个数的十进制形式作为答案提交。 #include <stdio.h> int main(…...

Flutter Button 实例

大家好&#xff0c;我是 17。 在上篇文章 使用 Flutter Button 介绍了如何修改 button 的样式&#xff0c;本文来具体实践一下。 本文列举一些常用的 button 效果&#xff0c;以便在用到的时候方便使用。因为 ElevatedButton 最常用&#xff0c;所以大多以 ElevatedButton 举…...

好玩的docker项目,盒子刷的海思nas,挂载外接硬盘。qb种子

玩法思路(5条消息) 群晖qb下载&#xff0c;tr辅种_屿兮的博客-CSDN博客_群晖辅种qbittorrent简介及设置_哔哩哔哩_bilibiliqb下载器下载Transmission最好用的BT(PT)下载神器/超简单上手教你在NAS轻松部署/告别简陋三步让你升级全中文最新Web界面&#xff08;BT下载/PT下载/NAS/…...

RabbitMQ的使用

1.初识MQ1.1.同步和异步通讯微服务间通讯有同步和异步两种方式&#xff1a;同步通讯&#xff1a;就像打电话&#xff0c;需要实时响应。异步通讯&#xff1a;就像发邮件&#xff0c;不需要马上回复。两种方式各有优劣&#xff0c;打电话可以立即得到响应&#xff0c;但是你却不…...

Selenium如何隐藏浏览器页面?

Selenium隐藏浏览器页面 背景 在工作&#xff0c;学习中&#xff0c;我们常常会使用selenium来获取网页上的数据&#xff0c;编完完整程序之后&#xff0c;实现真正意义上的自动化获取&#xff0c;此时我们会发现在运行中往往会弹出浏览器页面&#xff0c;在调试过程中&…...

基于Ant DesignPro Vue实现通过SpringBoot后台加载自定义菜单- 前后端分离

基于Ant DesignPro Vue实现通过SpringBoot后台加载自定义菜单- 前后端分离 本文想基于Ant DesignPro Vue构建的前端SpringBoot实现的后端接口服务&#xff0c;实现前后端分离开发和独立运行&#xff0c;业务场景是登录认证&#xff0c;认证成功后返回该用户相应权限范围内可见的…...

Acwing---843. n-皇后问题

n-皇后问题1.题目2.基本思想3.代码实现1.题目 n−皇后问题是指将 n 个皇后放在 nn 的国际象棋棋盘上&#xff0c;使得皇后不能相互攻击到&#xff0c;即任意两个皇后都不能处于同一行、同一列或同一斜线上。 现在给定整数 n&#xff0c;请你输出所有的满足条件的棋子摆法。 …...

彻底搞清楚内存泄漏的原因,如何避免内存泄漏,如何定位内存泄漏

作为C/C开发人员&#xff0c;内存泄漏是最容易遇到的问题之一&#xff0c;这是由C/C语言的特性引起的。C/C语言与其他语言不同&#xff0c;需要开发者去申请和释放内存&#xff0c;即需要开发者去管理内存&#xff0c;如果内存使用不当&#xff0c;就容易造成段错误(segment fa…...

自动驾驶目标检测项目实战——基于深度学习框架yolov的交通标志检测

自动驾驶目标检测项目实战——基于深度学习框架yolov的交通标志检测 目前目标检测算法有很多&#xff0c;流行的就有faster-rnn和yolov&#xff0c;本文使用了几年前的yolov3框架进行训练&#xff0c;效果还是很好&#xff0c;当然也可以使用更高版本的Yolov进行实战。本代码使…...

flink兼容性验证

flink介绍&#xff1a;https://blog.csdn.net/weixin_43563705/article/details/107604693 一、安装启动 安装flink及其依赖 yum install java-1.8.0-openjdk curl tar mkdir -p /usr/local/flink wget https://mirrors.aliyun.com/apache/flink/flink-1.16.1/flink-1.16.1-bi…...

智慧工厂数字孪生可视化监测系统有效提升厂区安全管控效力

我国制造业正处于产业升级的关键时期&#xff0c;基于数据进行生产策略制定与管理是大势所趋&#xff0c;而数据可视化以更直观的方式成为数据分析传递信息的重要工具。 深圳华锐视点通过三维可视化手段对工厂各类设备进行三维建模&#xff0c;真实复现设备设施外观、结构、运转…...

手游刚开服就被攻击怎么办?如何防御DDoS?

开服初期是手游最脆弱的阶段&#xff0c;极易成为DDoS攻击的目标。一旦遭遇攻击&#xff0c;可能导致服务器瘫痪、玩家流失&#xff0c;甚至造成巨大经济损失。本文为开发者提供一套简洁有效的应急与防御方案&#xff0c;帮助快速应对并构建长期防护体系。 一、遭遇攻击的紧急应…...

React第五十七节 Router中RouterProvider使用详解及注意事项

前言 在 React Router v6.4 中&#xff0c;RouterProvider 是一个核心组件&#xff0c;用于提供基于数据路由&#xff08;data routers&#xff09;的新型路由方案。 它替代了传统的 <BrowserRouter>&#xff0c;支持更强大的数据加载和操作功能&#xff08;如 loader 和…...

在rocky linux 9.5上在线安装 docker

前面是指南&#xff0c;后面是日志 sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo dnf install docker-ce docker-ce-cli containerd.io -y docker version sudo systemctl start docker sudo systemctl status docker …...

基于当前项目通过npm包形式暴露公共组件

1.package.sjon文件配置 其中xh-flowable就是暴露出去的npm包名 2.创建tpyes文件夹&#xff0c;并新增内容 3.创建package文件夹...

智能在线客服平台:数字化时代企业连接用户的 AI 中枢

随着互联网技术的飞速发展&#xff0c;消费者期望能够随时随地与企业进行交流。在线客服平台作为连接企业与客户的重要桥梁&#xff0c;不仅优化了客户体验&#xff0c;还提升了企业的服务效率和市场竞争力。本文将探讨在线客服平台的重要性、技术进展、实际应用&#xff0c;并…...

高危文件识别的常用算法:原理、应用与企业场景

高危文件识别的常用算法&#xff1a;原理、应用与企业场景 高危文件识别旨在检测可能导致安全威胁的文件&#xff0c;如包含恶意代码、敏感数据或欺诈内容的文档&#xff0c;在企业协同办公环境中&#xff08;如Teams、Google Workspace&#xff09;尤为重要。结合大模型技术&…...

Psychopy音频的使用

Psychopy音频的使用 本文主要解决以下问题&#xff1a; 指定音频引擎与设备&#xff1b;播放音频文件 本文所使用的环境&#xff1a; Python3.10 numpy2.2.6 psychopy2025.1.1 psychtoolbox3.0.19.14 一、音频配置 Psychopy文档链接为Sound - for audio playback — Psy…...

【JavaWeb】Docker项目部署

引言 之前学习了Linux操作系统的常见命令&#xff0c;在Linux上安装软件&#xff0c;以及如何在Linux上部署一个单体项目&#xff0c;大多数同学都会有相同的感受&#xff0c;那就是麻烦。 核心体现在三点&#xff1a; 命令太多了&#xff0c;记不住 软件安装包名字复杂&…...

Java编程之桥接模式

定义 桥接模式&#xff08;Bridge Pattern&#xff09;属于结构型设计模式&#xff0c;它的核心意图是将抽象部分与实现部分分离&#xff0c;使它们可以独立地变化。这种模式通过组合关系来替代继承关系&#xff0c;从而降低了抽象和实现这两个可变维度之间的耦合度。 用例子…...

C#学习第29天:表达式树(Expression Trees)

目录 什么是表达式树&#xff1f; 核心概念 1.表达式树的构建 2. 表达式树与Lambda表达式 3.解析和访问表达式树 4.动态条件查询 表达式树的优势 1.动态构建查询 2.LINQ 提供程序支持&#xff1a; 3.性能优化 4.元数据处理 5.代码转换和重写 适用场景 代码复杂性…...