河南火焰山网站开发禹php网站投票源码

张小明 2025/12/30 23:47:25
河南火焰山网站开发禹,php网站投票源码,品牌策略,上传的网站怎么打开Docker学习笔记—day012#xff08;容器化编排#xff09; 文章目录一、Docker-Compose1.1、docker-compose是什么1.2、docker-compose能干什么1.3、docker-compose下载1.4、docker-compose核心概念1.5、docker-compose使用的三个步骤1.6、docker-compose使用的三个步骤二、D…Docker学习笔记—day012容器化编排文章目录一、Docker-Compose1.1、docker-compose是什么1.2、docker-compose能干什么1.3、docker-compose下载1.4、docker-compose核心概念1.5、docker-compose使用的三个步骤1.6、docker-compose使用的三个步骤二、Docker-Compose案例2.1、编写DockerFile文件2.2、构建镜像2.3、不使用Compose2.4、使用Compose2.4.1、编写docker-compose.yml文件2.4.2、修改微服务工程docker_boot2.4.3、编排Dockerfile启动与2.4.4、 进入mysql容器实例并新建数据库表和Redis容器实例一、Docker-ComposeDocker-compose是Docker官方开源的项目负责实现对Docker容器集群的快速编排1.1、docker-compose是什么Compose是Docker公司推出的一个工具软件可以管理多个Docker容器组成的一个应用。只需要定义一个YAML格式的配置文件docker-compse.yml。写出多个容器之间的调用关系。然后只需一个命令就能同时启动/关闭这些容器。1.2、docker-compose能干什么docker一般是每一个容器只运行一个服务因为docker容器本来占用的资源比较少所以最好是将每一个服务单独分割开。造成的问题如果我们同时需要部署多个服务每个服务都使用Dockerfile然后在构建镜像这样也太麻烦了。Docker官方提供的Compose多服务部署的工具就是解决上述问题的。例如如果我们要实现一个Web微服务项目除了Web服务器本身往往还需要再加上后端使用的Mysql服务容器、Redis服务容器、注册中心Eureka甚至包含一些负载均衡容器等等。Compose允许用户通过一个单独的docker-compose.yml模版文件来定义一组相关联的应用容器为一个项目。Docker-Compose的优点高效的协作可共享的YAML文件有助于开发人员和运维人员之间的顺畅协作优化工作流程并加快问题的解决速度提高工作效率。快速应用开发Compose会缓存用于创建容器的配置。当你重启为发生改变的服务时Compose会重新使用现有的容器。重复使用容器意味着可以非常迅速地对环境进行修改。跨环境的可移植性1.3、docker-compose下载下载Docker Compose二进制文件curl-Lhttps://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname-s)-$(uname-m)-o/usr/local/bin/docker-compose赋予文件可执行的权限chmodx/usr/local/bin/docker-compose验证安装docker-compose--version卸载方式sudorm/usr/local/bin/docker-compose1.4、docker-compose核心概念一个文件Docker-Compose.yml文件两个要素服务和工程服务service一个个应用容器实例。比如订单微服务、库存微服务、mysql容器、nginx容器实例、Redis容器实例等等工程project由一组关联的应用容器组成的一个完整业务单元在docker-compose.yml文件中定义。1.5、docker-compose使用的三个步骤编写Dockerfile定义各个微服务应用并构建出对应的镜像文件使用docker-compose.yml定义一个完整的业务单元安排好整体应用中的各个容器服务。执行docker-compose up命令来启动并运行整个应用程序完成一键部署上线1.6、docker-compose使用的三个步骤# 1、查看帮助docker-compose-h# 2、启动所有docker-compose服务docker-compose up# 3、启动所有docker-compose服务并后台运行docker-compose up-d# 4、停止并删除容器、网络、卷、镜像docker-compose down# 5、进入容器实例内部# docker-compose exec docker-compose.yml 文件中写的服务id /bin/bashdocker-compose exec yml里面的服务id# 6、展示当前docker-compose编排过的运行的所有容器docker-composeps# 7、展示当前docker-compose编排过的容器进程docker-compose top# 8、查看容器输出日志docker-compose logs yml里面的服务id# 9、检查配置docker-compose config# 10、检查配置有问题才输出docker-compose config-q# 11、重启服务dockercompose restart# 12、启动服务docker-composestart# 13、停止服务docker-ompose stop二、Docker-Compose案例写一个简单的微服务项目通过mysql、redis实现增删改查2.1、编写DockerFile文件# 基础镜像使用FROMjava:8# VOLUME 指定临时文件目录/tmp ,在主机var/lib/docker目录下创建一个临时文件并链接到容器的/tmpVOLUME/tmp# 将jar包添加到容器中并命名为radan_docker。jarADD docker_boot-0.0.1.SNAPSHOT.jar radan_docker.jar# 运行jar包RUN bash-ctouch /radan_docker.jarENTRYPOINT[java,-jar,/radan_docker.jar]# 保留服务端口EXPOSE 60012.2、构建镜像docker build-t radan_docker:1.0.2.3、不使用Compose不使用容器化编排技术的时候镜像一个一个按顺序启动很显然得运行三次容器实例# 1、新建Mysql容器docker run-p 3306:3306--name mysql57--privilegedtrue/radan/mysql/conf:/etc/mysql/conf.d-v/radan/mysql/logs:/logs-v/radan/mysql/data:/var/lib/mysql-e MYSQL_ROOT_PASSWORD123456-d mysql:5.7# 2、新建redis容器实例docker run-p 6379:6379--name redis608--privilegedtrue-v/app/redis/redis.conf:/etc/redis/redis.conf-v/app/redis/data:/data-d redis:6.0.8 redis-server/etc/redis/redis.conf# 3、启动微服务镜像docker run-d-p 6001:6001 镜像ID上面这种方式可以成功部署但显然操作是花费时间的。其次。容器间的启停或者宕机有可能导致IP地址对应的容器实例变化映射出现问题要么生产IP写死不推荐要么通过服务进行调用2.4、使用Compose2.4.1、编写docker-compose.yml文件version:3# 指定Docker Compose文件格式版本services:# 微服务应用microService:image:zzyy_docker:1.6# 使用的自定义微服务镜像container_name:ms01# 容器名称方便识别和管理ports:-6001:6001# 端口映射主机端口6001映射到容器端口6001volumes:-/app/microService:/data# 数据卷挂载将主机目录挂载到容器networks:-atguigu_net# 连接到自定义网络depends_on:-redis-mysql# 依赖关系先启动redis和mysql服务# Redis缓存服务redis:image:redis:6.0.8# Redis 6.0.8版本镜像ports:-6379:6379# Redis默认端口映射volumes:-/app/redis/redis.conf:/etc/redis/redis.conf# 挂载Redis配置文件-/app/redis/data:/data# 挂载Redis数据持久化目录networks:-atguigu_net# 连接到自定义网络command:redis-server /etc/redis/redis.conf# 使用自定义配置启动Redis# MySQL数据库服务mysql:image:mysql:5.7# MySQL 5.7版本镜像container_name:mysql57# MySQL容器名称environment:MYSQL_ROOT_PASSWORD:123456# 设置root用户密码MYSQL_ALLOWED_EMPTY_PASSWORD:no# 不允许空密码MYSQL_DATABASE:db2021# 容器启动时创建的默认数据库MYSQL_USER:zzyy# 创建额外的普通用户MYSQL_PASSWORD:zzyy123# 普通用户的密码ports:-3306:3306# MySQL默认端口映射volumes:-/app/mysql/db:/var/lib/mysql# 挂载MySQL数据目录防止数据丢失-/app/mysql/conf/my.cnf:/etc/my.cnf# 挂载MySQL配置文件-/app/mysql/init:/docker-entrypoint-initdb.d# 初始化脚本目录networks:-atguigu_net# 连接到自定义网络command:--default-authentication-pluginmysql_native_password# 解决外部客户端连接认证问题# 定义自定义网络networks:atguigu_net:# 创建一个名为atguigu_net的桥接网络# 网络配置可在此处添加更多网络设置如driver、ipam等2.4.2、修改微服务工程docker_boot此时应该通过暴漏的服务名去调用IPserver:port:6001spring:datasource:type:com.alibaba.druid.pool.DruidDataSourcedriver-class-name:com.mysql.jdbc.Driver# 直接通过容器实例的服务名映射IP# url: jdbc:mysql://192.168.1.107:3306/db2021?useUnicodetruecharacterEncodingutf-8useSSLfalseurl:jdbc:mysql://mysql:3306/db2021?useUnicodetruecharacterEncodingutf-8useSSLfalseusername:rootpassword:123456redis:database:0# host: 192.168.1.107host:redisport:6379password:lettuce:pool:max-active:8max-wait:-1msmax-idle:8min-idle:0shutdown-timeout:100ms2.4.3、编排Dockerfile启动与和之前的操作类似唯一不一样的启动# 先看我们编写的docker-compose.yml文件编写的对不对# 对了就没有任何输出docker-compose conf-q# 进行容器编排docker-compose up-d2.4.4、 进入mysql容器实例并新建数据库表和Redis容器实例# 进入mysql容器实例docker exec-it mysql容器实例ID# 进入redis容器实例docker exec-it redis容器实例ID注使用docker-compose进行容器编排可以一键启动还可以通过服务名找到对应IP不必把IP写死
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

最好网页游戏网站网站制作怎么做下拉菜单

Transformer模型压缩技术降低Qwen-Image-Edit-2509推理成本 在电商商品图批量修图、社交媒体一键换装、广告素材快速迭代等高频图像处理场景中,AI驱动的智能编辑正从“炫技”走向“刚需”。阿里巴巴通义实验室推出的 Qwen-Image-Edit-2509 模型,凭借其对…

张小明 2025/12/30 15:19:49 网站建设

自建网站视频教程极简wordpress主题

【一个网工仔的悲喜交加:前端搞定了,后端求包养!】 各位道友好!俺是山西某高校网络工程专业的菜狗一枚,刚啃完《JavaScript从入门到住院》,就被导师按头要求搞个10G大文件上传系统。现在前端用Vue3原生JS硬…

张小明 2025/12/30 14:21:53 网站建设

石家庄建设局官方网站响应式网站 宽度

导语 【免费下载链接】KAT-V1-40B 项目地址: https://ai.gitcode.com/hf_mirrors/Kwaipilot/KAT-V1-40B Kwaipilot团队近日发布的开源大模型KAT-V1-40B凭借创新的AutoThink机制,在防数据泄露的权威代码评测基准LiveCodeBench Pro中超越Seed等闭源系统&#…

张小明 2025/12/29 8:00:39 网站建设

大学网站建设工作总结网页app开发

你是否曾经遇到过这样的困扰:在本地运行正常的应用,部署到服务器就各种问题频出?或者想要快速搭建一个开发环境,却要花费大量时间安装配置各种依赖?这些问题正是Docker技术要解决的核心痛点。今天,我们将通…

张小明 2025/12/29 8:00:36 网站建设

凡客建站快车设计公司官网首页

如何轻松掌握NoFences:桌面图标管理的终极免费方案 【免费下载链接】NoFences 🚧 Open Source Stardock Fences alternative 项目地址: https://gitcode.com/gh_mirrors/no/NoFences 您是否曾经面对杂乱的桌面图标感到无从下手?是否经…

张小明 2025/12/29 4:30:19 网站建设

做网站要源码吗企业网站建设基本步骤

简介 文章系统介绍了AI发展历程从规则系统到6710亿参数大模型的演进,详细解析了大语言模型(LLM)的训练原理、Token处理机制以及Temperature与Top P参数对生成文本的影响。同时,探讨了AI Chat产品的联网搜索、文件读取和记忆功能,分析了全球A…

张小明 2025/12/28 22:02:27 网站建设