vs2022开发的项目可以直接打包镜像到 linux主机。
idea 可以使用docker插件直接打包镜像到linux,我想vs2022也可以,于是开始摸索
官网只说支持docker desktop 本机打包,但是安装docker desktop 再加上安装虚拟机特性占用空间太大
,能不能借助远程linux主机打包呢,答案是肯定的。
第一、下载docker-ce的win版本,由于docker官网被墙,可通过各大学镜像站下载
最新版是docker-27.1.2.zip 13-Aug-2024 13:46 38752050
解压后 有2个文件 docker和 dockerd, 一个是命令行工具,一个是docker引擎
如果不在本地运行虚拟机,不需要用到dockerd引擎。
 
第二、设置docker主机环境变量
DOCKER_HOST 设置为tcp://192.168.200.110:2375
这台主机已开启2375端口监听(默认情况下只支持本地连接127.0.0.1:2375)
如果开启自行百度
 
第三、项目增加docker支持
在项目右键菜单-添加 ,选择Docker支持...
选项如下,确定后会在项目目录生成Dockerfile文件(这个文件一般不需要修改)

第四、开始打包镜像

先测试docker 客户端能否连上linux服务器
docker ps 一下,看看能否显示出 正在运行的容器(没有容器运行至少不报错)
如果没有错误,就可以开始构建镜像了
首先 在powershell 或 cmd 命令下,构建总是失败,可能是window 路径 与linux 不一致
copy命令无法正常工作,vs2022 中选中 Dockerfile,右键点“生成docker 映像” 构建也有问题:
镜像能够打包成功,项目build阶段的文件没有拷贝到镜像里,导致entrypoint 为null,docker run 无法正常运行。
最后利用gitbash 命令构建可以成功 (git bash需要安装git客户端就会有下载地址:https://git-scm.com/downloads
构建命令:docker build -t webapi:dev .
命令执行完毕后,docker image ls 一下看看没有刚刚构建的镜像了。
docker run -d -p:8085:80 --name=webapi-test webapi:dev
容器跑起来后不会退出,远程也可以正常访问了。
 
 

vs2022不安装docker desktop可以打包镜像吗的更多相关文章

  1. Docker 技术系列之安装Docker Desktop for Mac

    终于要进入到Docker技术系列了,感谢大家的持续关注. 为什么要选择Docker?因为Docker 轻巧快速,提供了可行.经济.高效的替代方案.举个例子,安装Nginx,Mysql,Redis等常用 ...

  2. macOS 安装 Docker Desktop CE(转)

    现在基本上都使用docker进行部署项目,所以还是有必要学习下,关于docker的简介这里就不在描述,本文转载自https://yeasy.gitbooks.io/docker_practice/co ...

  3. (二) Windows 进行 Docker CE 安装(Docker Desktop)

    参考并感谢 官方文档: https://docs.docker.com/docker-for-windows/install/ 下载地址 https://download.docker.com/win ...

  4. [Docker] Win10中安装Docker并运行Nginx镜像

    一.安装Docker 进入官网:https://www.docker.com/products/docker-desktop 可能需要先注册登录,很简单的. 点击 Download Desktop f ...

  5. 麒麟操作系统上安装docker并加载镜像

    最近需要在政务云系统中部署深度学习环境,其使用麒麟操作系统并与互联网相互隔离,无法使用常规的指令行方式进行安装.参考docker官方文档并经过多次尝试,使用离线安装的方式完成了环境的部署.这里做一下笔 ...

  6. CentOS7安装Docker,运行Nginx镜像、Centos镜像

    摘要 总体思路:yum命令直接安装Docker,下载想要的镜像并启动 1.环境,CentOS7 Minimal 64位,Docker必须要64位的系统 2.通过yum命令直接安装,yum instal ...

  7. 构建微服务开发环境4————安装Docker及下载常用镜像

    [内容指引] 下载Docker: Mac下安装Docker: Windows下安装Docker; 下载常用docker镜像. 一.下载Docker 1.Mac适用Docker下载地址:https:// ...

  8. Homebrew 安装 Docker Desktop for Mac

    无意中发现Homebrew现在已经支持Docker Desktop for Mac了,因此特意把原来通过 https://docs.docker.com/docker-for-mac/install/ ...

  9. WIN7安装Docker Toolbox、制作镜像并发到阿里云

    一.安装Docker Toolbox,并配置国内源加速 WIndows7不支持Hyper-v,所以只能采用Docker Toolbox的方式使用Docker.传送门:http://mirrors.al ...

  10. centos7安装docker,并配置镜像加速

    yum安装gcc yum -y install gcc yum -y install gcc-c++ 卸载旧版本 (没有可忽略) yum -y remove docker docker-common ...

随机推荐

  1. [python] Python日志记录库loguru使用指北

    Loguru是一个功能强大且易于使用的开源Python日志记录库.它建立在Python标准库中的logging模块之上,并提供了更加简洁直观.功能丰富的接口.Logging模块的使用见:Python日 ...

  2. 【Grafana】Grafana模板自定义-1-创建选择框

    如何创建选择框 第一步:编辑模板 第二步:配置变量 配置说明: General: [Name]变量名,后面模板中如果要按条件筛选,会用到这个变量名. [Type]类型,目前没仔细研究,使用默认的Que ...

  3. Mybatis 中 foreach 的四种用法

    foreach的主要用在构建in条件中,它可以在SQL语句中进行迭代一个集合. foreach元素的属性主要有 item,index,collection,open,separator,close. ...

  4. 我跟你说@RefreshScope跟Spring事件监听一起用有坑!

    本文记录一下我在 Spring 自带的事件监听类添加 @RefreshScope 注解时遇到的坑,原本这两个东西单独使用是各自安好,但当大家将它们组合在一起时,会发现我们的事件监听代码被重复执行.希望 ...

  5. 输入Javac提示不是内部或外部命令

    先去百度搜索"jdk下载"下载最新版jdk,并安装,安装目录不用去更改,直接默认就好,下载完了之后,双击打开安装,jdk安装完成后,会接着安装jre包,(jre和jdk是配对的,不 ...

  6. EFCore DbFirst从数据库生成实体类

    1.点击"工具"->"NuGet包管理器"->"程序包管理器控制台" 分别安装以下几个包 Mysql 版本: Install-P ...

  7. 关于c++出现的易错问题

    比如我一个对象,经常操作用的指针ptr,原生指针比如ClassA* ca =; 但是我要保存ca,在另一个地方操作,比如: cb =ca; 这样子是不行的,因为我要操作的是ca,而不是ca的值,为什么 ...

  8. oauth2协议

    什么是OAUTH2协议: 首先是几个概念问题: 资源:用户信息,在微信中存储 资源拥有者:用户 认证服务:微信负责认证用户的身份,也负责为客户端颁发令牌 客户端:携带令牌请求微信获取用户信息 仍以微信 ...

  9. docker 部署redis 并在外部访问 docker命令

    docker search redis //搜索redis版本 docker pull redis //拉取最新版本 docker run -d --name redis -p 自定义端口:6379 ...

  10. SEO自动外链工具的功效以及使用心得

    SEO外链发布工具原理 1.自动SEO外链工具原理:就是把您的网址提交大站长工具类似的网站上面进行搜索,然后就会在上面留下痕迹自动生成以网址为标题的静态页面. 2.自动SEO外链发布效果:我们就是利用 ...