【部署】docker容器化 前端学习

用Streamlit+FastAPI打造机器学习应用:从本地调试到Docker部署全流程 本文详细介绍了如何利用Streamlit和FastAPI构建机器学习应用的全流程,从本地调试到Docker部署。通过汽车评估案例,展示了前后端分离架构的设计与实现,包括环境准备、API开发、前端界面设计以及容器化部署。文章还涵盖了性能优化、安全实践和持续集成等高级主题,为开发者提供一站式解决方案。 阅读详情

1.容器化

 容器化是将应用程序或服务、其依赖项及其配置(抽象化为部署清单文件)一起打包为容器映像的一种软件开发方法

特点:

  • 一致的运行环境
  • 可伸缩性
  • 更方便的移植
  • 隔离性  

2.Docker 

go语言开发的应用容器引擎, 基于容器化,沙箱机制的应用部署技术。可适用于自动化测试、打包,持续集成和发布应用程序等场景

Docker中三个重要概念

  • 镜像(image):分片的(只读)文件系统,由Dockerfile创建独立、易扩展、更效率

  • 容器(container):由Docker进程创建和管理的:文件系统 + 系统资源 + 网络配置 + 日志管理;docker是docker镜像的运行环境,所以容器的概念就比较好理解了

  • 仓库(registry):用来远端存储docker镜像;版本控制、变更管理、为持续集成与快速部署提供便利

示意图: 

 tips:docker与虚拟机的比较?

3.Docker工作原理

Docker是容器化部署技术,它主要作用在于通过运行容器来实现应用部署,而容器基于镜像运行。仓库则管理镜像。

简单地说,就是将你的项目和依赖包(基础镜像)打成一个带有启动指令的项目镜像,然后在服务器创建一个容器,让镜像在容器内运行,从而实现项目的部署。

4.Docker安装

Docker的安装建议上阿里云【容器镜像服务】查找,很详尽 

mac安装:https://docs.docker.com/docker-for-mac/install/

window安装:https://docs.docker.com/docker-for-windows/install/  

这里因为我使用的是win7,所以安装的是docker toolbox,关于docker toolbox的安装,建议在阿里云的容器镜像服务中找,从安装到切换国内镜像,都妥了。

那如果已经创建了default怎么办?

//1.进入default
docker-machine ssh default

//2.更换地址
sudo sed -i "s|EXTRA_ARGS='|EXTRA_ARGS='--registry-mirror=你的阿里云镜像加速地址 |g" /var/lib/boot2docker/profile  

//3.退出
exit

//4.重启镜像源
docker-machine restart default

//5.验证是否已更换
docker info

更换成功示意图:

 tips:如果你的电脑是win7且你的电脑登录账户不是系统管理员,那么要么换win10电脑,要么把电脑砸了,因为后面是无限的坑。。。

5.Docker常用命令

docker的命令都是以docker开头 

容器创建:

  • run:创建容器
  • -p:映射宿主机的端口给镜像服务使用
  • -v:挂载宿主机的文件目录到镜像里面
  • -it:提供交互式的终端工具
  • -d:是让镜像容器在后台去持续运行
  • --name:指定容器的名称
  • exec:进入到容器里面

示例:

//创建一个root密码为123456的mysql版本为5.7的端口映射到8000,且取名为 mysql5.7test01的容器
docker run -p 8000:3306 -e MYSQL_ROOT_PASSWORD=123456 -itd --name mysql5.7test01 mysql:5.7

容器操作:

  • start:启动
  • stop:停止
  • restart:重启
  • rm:删除已停止容器(未停止不可删除)
  • ps:查看正在运行的容器的状态
  • ps -a:-a参数来查看所有的已经运行的容器(无论是否停止)

示例:

docker ps -a


docker rm mysql5.7test
或
//docker rm 容器id

镜像操作(镜像部分涉及到仓库的操作,仓库操作类比Git命令即可):

前提:docker hub上注册docker账号:Docker Hub

  • login:仓库登录
  • pull: 拉取镜像
  • commit:提交镜像
  • push:推送镜像
  • 补充commit/pull/push:每个操作需要给一个标签:tag
  • images:查看本地所有镜像
  • rmi:删除本地镜像(删除前需要停止并删除依赖该镜像的容器,否则删除失败)

示例:

docker commit <container_id> <namespace>/<image_name>:tag
docker pull/push <namespace>/<image_name>:tag

//如:
docker commit tr8yt89yty xxxx/mysql:5.7


//推送
docker push tomcat:8

6.Dockerfile

用于构建镜像

7.Docker-compose 

定义一个多容器的应用

6,7因电脑原因暂停 

基于OpenMAIC+Next.js+Docker构建AI个性化学习平台全栈实践 在人工智能与教育技术融合的背景下,个性化学习已成为提升教育效果的关键路径。其核心原理在于通过算法分析学习者数据,动态调整内容与节奏,实现因材施教。这一技术的核心价值在于打破传统单向灌输模式,提供实时反馈与自适应学习路径,从而显著提升学习效率与参与度。其典型应用场景包括智能辅导、自适应练习与学习进度管理。本文聚焦于利用OpenMAIC这一多AI模型编排框架,结合Next.js与Docker容器化技术,实战构建一个具备实时对话、错题分析与计划生成能力的“AI全天候陪读班”系统,为开发者提供从环境搭建、核心功能实 阅读详情

相关推荐

机器学习模型七种生产部署形态实战指南

机器学习模型部署是将训练成果转化为实际业务价值的关键环节,其本质是解决模型封装、服务化、资源适配与可观测性等系统性问题。核心原理在于解耦模型逻辑与运行环境,通过标准化接口契约(如统一的predict方法)实现跨形态复用。技术价值体现在可维护性、可扩展性与合规可控性上——例如ONNX格式提升跨平台兼容性,Docker+Starlette组合兼顾轻量与高并发,零外部依赖策略满足金融级安全审计要求。典型应用场景覆盖CLI批量预测、Web API服务、Serverless函数、边缘设备推理及微前端集成等多元交付形态

weixin_28693683的博客 324

超详细:30分钟入门docker前端容器化

前端利用docker进行容器化实战记录

一步一个脚印 3459

前端工程化精讲第二十一课 容器方案:从构建到部署容器化方案的优势有哪些?

容器化(Containerization)通常是指以Docker技术为代表,将操作系统内核虚拟化的技术。和传统的虚拟机相比,容器化具有占用空间更小、性能开销更低、启动更快、支持弹性伸缩以及支持容器间互联等优势。下面介绍 Docker 的几个基本概念。这节课我们首先了解了以 Docker 为代表的容器化技术的基本概念:镜像、容器、数据挂载和网络等。然后讨论了容器化的构建部署需要经历的流程,先创建镜像,然后根据镜像创建容器,最后在容器内执行相关部署环节。...

fegus的博客 1164

前端 VUE 项目容器化方案 - 总有一款适合你

服务,且每次更新的前端资源都以镜像中的资源为准(每次重启容器,宿主机的资源都会被容器中的资源所覆盖),非必要无需挂载资源到宿主机。作为反向代理,且每次更新的前端资源都以镜像中的资源为准(每次重启容器,宿主机的资源都会被容器中的资源所覆盖),只需要将容器中的资源挂载到宿主机。作为反向代理,且每次更新的前端资源都以镜像中的资源为准(每次重启容器,宿主机的资源都会被容器中的资源所覆盖),只需要将容器中的资源挂载到宿主机。配置文件建议由运维统一管理,以免研发的配置版本和生产于运维的存在冲突的情况。

Rambo's Blog 1343

小而强大:通过容器化应用实现前端微服务

采用前端服务化和小程序容器技术能够提供许多好处。通过将前端应用拆分为独立的小程序模块,并通过容器提供的接口和通信机制进行交互,我们可以实现前端应用的模块化、独立部署和扩展,以及松耦合的通信。

speedoooo的博客 753

使用Docker完成前端部署

使用Docker完成前端部署

m0_59757074的博客 5951

Flexbox Grid与Google Cloud Run部署容器化应用服务

你是否在开发响应式网页时遇到布局错乱问题?是否想快速将前端项目部署到云端?本文将带你使用Flexbox Grid构建灵活布局,并通过Google Cloud Run实现容器化部署,从开发到上线全程实操。读完你将掌握:响应式网格系统搭建、Docker容器配置、Cloud Run服务部署全流程。 ## Flexbox Grid简介 Flexbox Grid是基于CSS3 Flexbox(弹性盒子)...

gitblog_00053的博客 864

一文学懂Docker——从快速入门到项目部署

本文章目的是一文学懂Docker,从最基础的Docker开始了解,从快速入门到实际应用项目部署;包含docker基础、docker如何部署容器、docker数据卷如何挂载、Dockerfile基础语法、docker自定义镜像、docker网络自定义、docker部署java应用、DockerCompose部署多服务项目

九离的博客 1381

全国职业院校技能大赛--K8s编排部署WebMall,学前端程序开发

你要问前端开发难不难,我就得说计算机领域里常说的一句话,这句话就是『难的不会,会的不难』,对于不熟悉某领域技术的人来说,因为不了解所以产生神秘感,神秘感就会让人感觉很难,也就是『难的不会』;当学会这项技术之后,知道什么什么技术能做到什么做不到,只是做起来花多少时间的问题而已,没啥难的,所以就是『会的不难』。我特地针对初学者整理一套前端学习资料,免费分享给大家,戳这里即可免费领取悉某领域技术的人来说,因为不了解所以产生神秘感,神秘感就会让人感觉很难,也就是『难的不会』;

2401_84093054的博客 794

【网络监控】Zabbix 7.4 容器化部署实战(Docker Compose 一站式)

本文详细介绍了使用Docker Compose容器化部署Zabbix 7.4的实战指南,包括环境准备、Compose文件编写、服务启动与初始化等关键步骤。通过容器化部署,可实现环境隔离、快速回滚和资源控制,大幅提升Zabbix监控平台的部署效率和稳定性。文章还提供了性能调优、数据持久化验证等高级配置技巧,帮助用户快速搭建企业级监控系统。

anjueci1221的博客 399

前端搭建集群步骤(ai生成)跟学中

按此计划执行,每天2-3小时,8周后可掌握集群搭建全流程,并能将前端项目无缝部署到集群中。(按此节奏细化每日任务,保持「操作→验证→记录」循环):熟练操作Linux,准备3台虚拟机环境。:将前端项目打包为Docker镜像并运行。:用Minikube部署前端应用到K8s。

weixin_44553966的博客 647

前端-Vue系列】前后端部署到服务器

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。非常期待和您一起在这个小小的网络世界里共同探索、学习和成长。💝💝💝 ✨✨ 欢迎订阅本专栏 ✨✨。

CSDN站内信: https://i.csdn.net/#/msg/chat/qyj19920704 2万+

开源项目推荐:Docker示例投票应用

Docker示例投票应用(Docker Example Voting App)是一个展示如何使用DockerDocker ComposeDocker Swarm和Kubernetes构建分布式应用的开源项目。该项目由多个容器组成,每个容器运行不同的服务,共同协作完成一个简单的投票应用。主要使用的编程语言包括Python、Node.js、.NET、HTML、CSS和JavaScript。 ##...

gitblog_00983的博客 515

七、Docker 容器 + Docker Compose单机部署理发店系统

docker+docker自定义网络 和 docker+docker compose;"手动拼积木" vs "按图纸一键组装"。对于部署一个包含后端、数据库、缓存等多服务的理发店系统,使用docker手动管理,和用编排,体验和效率会有天壤之别。对比维度纯 Docker 命令 (docker + docker network)工作方式命令式,手动逐条输入指令。声明式,在文件中定义所有服务。配置管理配置分散在命令行参数中,难以记录和复用。

weixin_39698240的博客 261

Python全栈开发2026学习路线:FastAPI + Vue3 + Docker从零到部署

Python全栈开发的学习路径清晰且可操作。从基础语法到FastAPI后端,从Vue3前端到数据库操作,再到Docker部署,每一步都有成熟的工具和丰富的学习资源。关键在于:拒绝只看不练,每学即写,尽早启动小项目。按照这条路线坚持2-3个月,你将具备独立开发全栈应用的能力。

yonggeit的博客 276

居家观影再升级,docker 部署 DecoTV 影音界面

免责说明:本文仅为 Docker 技术学习记录,DecoTV 为空壳界面项目,不含任何影视源、播放接口;好久没有给大家更新影视的项目,今天挖掘一款项目:DecoTV ,它是一个基于网页影视聚合工具,通过web访问该项目,进行影视的搜索与观看。我们先进入威联通NAS,接着打开ContainerStaion,点击【应用程序】→【创建】,将下方的代码复制粘贴进去。DecoTV部署起来很简单,用它来观影也比较方便,另外这个项目本身不带源,需要大家动动聪明的脑袋,自行解决哈。导入完视频源之后,可以愉快的观影啦。

m0_72778094的博客 293

47K Star 的SpringBoot+MyBatis+docker电商项目,附带超详细的文档!

点击上方好好学java,选择星标公众号 重磅资讯,干货,第一时间送达 今日推荐:推荐19个github超牛逼项目!个人原创100W +访问量博客:点击前往,查看更多 简介 ...

好好学java 411

50 Projects In 50 Days项目部署教程:从本地开发到生产环境的完整流程

想要将50 Projects In 50 Days这个包含50个HTML/CSS/JavaScript项目的学习资源库成功部署到生产环境吗?这个终极部署指南将带你从零开始,掌握完整的部署流程!无论你是前端新手还是经验丰富的开发者,这篇完整教程都会为你提供简单快速的部署方案。🎯 ## 📋 项目概述与部署准备 50 Projects In 50 Days是由Packt Publishing发布

gitblog_00281的博客 451
上一篇: vscode常用插件(个人)
下一篇: 【vue】配置cdn加速
谭CV
博客等级 码龄9年 73粉丝 85原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值