首页 > 其他分享 >docker 发布部署篇

docker 发布部署篇

时间:2024-01-04 17:55:20浏览次数:36  
标签:run 部署 -- 发布 build dotnet docker Dockerfile

1.下载consul 拉取镜像

docker pull consul或者docker pull consul:1.6.1

2.安装并运行consul

docker run -d -p 8500:8500 --name=consul consul:1.6.1 agent -server -bootstrap -ui -node=1 -client='0.0.0.0'          

--如果是退出exited 状态,则docker start  #CONTAINER ID

 

consul部署完后,开始部署微服务

3.Build 镜像

docker build -t microsoftservice -f Dockerfile .

docker build -t microsoftservice1 -f Dockerfile .

docker build -t microsoftservice2 -f Dockerfile .

微服务映射端口

docker run -itd --name server1 -p 8004:80 microsoftservice4

docker run -itd --name server2 -p 8005:80 microsoftservice5

docker run -itd --name server3 -p 8006:80 microsoftservice6

修改dockerfile文件

FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base
WORKDIR /app
EXPOSE 80
EXPOSE 443
COPY . .
ENTRYPOINT ["dotnet", "Zhaoxi.MicroService.ServiceInstance.dll"]

 

 

 注意 cd 到对应的路径操作

 

完整步骤:

1、安装基础镜像(mcr.microsoft.com/dotnet/aspnet:6.0 和 mcr.microsoft.com/dotnet/sdk:6.0)


docker pull mcr.microsoft.com/dotnet/aspnet:6.0
docker pull mcr.microsoft.com/dotnet/sdk:6.0

安装.NetCoreSDK6.0
rpm -Uvh https://packages.microsoft.com/config/centos/7/packages-microsoft-prod.rpm
yum install dotnet-sdk-6.0       

检查环境:dotnet --info


2、更改Dockerfile文件

FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base
WORKDIR /app
EXPOSE 80
EXPOSE 443
COPY . .
ENTRYPOINT ["dotnet", "Zhaoxi.MicroService.ServiceInstance.dll"]

FROM:意思是我们的项目源镜像是哪个;
WORKDIR:镜像的工作目录
EXPOSE:容器要开放的端口(我们用项目的8081端口)
COPY:复制文件(将Dockerfile所在目录下文件复制到镜像中的工作目录中)
ENTRYPOINT:为容器启动后要执行的命令 (这里将执行dotnet Docker.Core.Api.dll命令)

3、在linux上使用docker build生成镜像

Dockerfile文件与发布包在同一级目录:
docker build -t myfirstwebapp:latest .

Dockerfile文件,指定路戏
docker image build -f ./WebCoreWebCg03/Dockerfile -t myfirstwebapp:latest .

4、编译完成后,查看镜像

docker images

5、 将镜像运行起来生成容器

docker run --name=aspnetcore -p 5103:80 -d aspnetcore

这时候在浏览器输入地址和端口就能访问了
http://10.1.8.85:5103/

5.查看环境变量
方式一 docker inspect 命令来查看
方式二 docker exec 容器id env

 

20231101测试 端口映射
docker build -t aspnetcoredocker .
docker images
docker run --name=aspnetcoredocker -p 6666:80 -d aspnetcoredocker
docker ps

6、综合命令

cd /data/websites/service1/
docker stop service1
docker rmi service1 -f
docker rm service1
docker build --no-cache -t service1 .
docker run -e "ASPNETCORE_ENVIRONMENT=development" --name=service1 --privileged=true --restart=always -p 5005:80 -d service1
docker ps

注:-e "ASPNETCORE_ENVIRONMENT=development" 一定放在run后面

 

标签:run,部署,--,发布,build,dotnet,docker,Dockerfile
From: https://www.cnblogs.com/zhanglimin222/p/17945157

相关文章

  • 部署Kubernetes(K8s)高可用群集需要多个步骤和考虑因素
    部署一个Kubernetes(K8s)高可用群集需要多个步骤和考虑因素。以下是详细步骤:规划和准备:评估集群需求,包括资源(CPU、内存、存储)、网络、安全和可扩展性。选择部署环境:公有云、私有云、混合云或本地数据中心。选择合适的Kubernetes发行版,例如kubeadm、Kops、Rancher或云提供商的托管服务......
  • 鸿蒙原生应用/元服务开发-发布进度条类型通知
    进度条通知也是常见的通知类型,主要应用于文件下载、事务处理进度显示。HarmonyOS提供了进度条模板,发布通知应用设置好进度条模板的属性值,如模板名、模板数据,通过通知子系统发送到通知栏显示。目前系统模板仅支持进度条模板,通知模板NotificationTemplate中的data参数为用户自定义数......
  • 大模型部署过程中需要注意的事项
    部署大型语言模型是一个详尽且复杂的过程,需要开发者们具备深入的理解和精确的实施策略。以下是对各个开发步骤的简单介绍,欢迎各位开发者一起讨论交流。数据集的准备与处理在部署大型语言模型之前,首先需要准备一个广泛且多样化的数据集。这个数据集应该涵盖多个领域、不同风格和语境......
  • 产品发布|Aloudata AIR 国内首个 Data Fabric 逻辑数据平台
    Aloudata AIR作为国内首个 Data Fabric 逻辑数据平台,通过自研的数据虚拟化技术,轻松实现多源异构数据的集成整合和自适应加速,为 Data Fabric 数据架构理念在国内的实践落地开辟了清晰的路径。传统“搭湖建仓”遇上数据管理“新挑战”得益于互联网和移动互联网的发展,以及数字......
  • 中国芯|山石网科安全管理平台HSM V5.5.0 & 国产化硬件平台正式发布
    2023年来,山石网科以独特的科技+生态新战略,深化安全产品和解决方案,引领信息技术创新,特别是在信创浪潮中乘风破浪,展现出行业的领先地位。5月份,山石网科隆重推出新一代安全管理平台HSM。凭借在安全运维领域的卓越表现,HSM被誉为“瑞士军刀”,在多种场景中都表现出优越的解决方案能力。......
  • Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docke
    CannotconnecttotheDockerdaemonatunix:///var/run/docker.sock.Isthedockerdaemonrunning?错误解决办法解决:从启动服务器1.systemctldaemon-reload2.systemctlrestartdocker.servicesystemctlrestartdocker.serviceCannotconnecttotheDockerdaemonatu......
  • 阿里云自建官方Docker仓库镜像提交拉取方法
    文章目录发布镜像到DockerHub发布镜像到自建Docker仓库(Harbor)修改配置文件在Linux服务器中登录Docker打TAGPUSH提交镜像PULL拉取镜像发布镜像到阿里云容器服务在Linux服务器中登录DockerPUSH提交镜像PULL拉取镜像发布镜像到DockerHub本地我们镜像命名可能会不规范,发布时想重新......
  • VMware ESXi 8.0U1 发布 - 领先的裸机 Hypervisor
    作者主页:sysin.org2023-04-18,VMwarevSphere8.0U1发布。详见:VMwarevSphere8Update1新增功能产品简介VMwareESXi:专门构建的裸机Hypervisor了解可直接安装到您的物理服务器的、可靠的裸机Hypervisor。通过直接访问并控制底层资源,VMwareESXi可有效地对硬件进行分区,以便......
  • 使用springcloud 实现 蓝绿发布、灰度发布(金丝雀发布)
    介绍工作中经常要涉及到功能发布,这个时候也经常是业务系统最有可能遇到问题的时候,需要要尽量减少发布引起的风险。比如在系统负载比较小的时候使用。还有蓝绿发布、灰度发布等等,今天介绍一下这几种常见的发布,并使用springcloud实现。1.传统发布方式一个系统最初的时候,使用量小,用户......
  • Apple Xcode 14.3 (14E222b) 正式版发布下载
    CommandLineToolsforXcode14,tvOS16&watchOS9SimulatorRuntime作者主页:sysin.orgXcode14包含了在所有Apple平台上开发、测试和分发App所需的一切资源。利用Swift和SwiftUI的易用性与强大能力以及全新的跨平台App体验,使用编辑器的增强功能更快捷地编写代码......