热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

云端_应用程序容器化dockerdockerCompose

使用docker-compose进行构建集群并运行Linux:catprocversiondocker:Dockerversion20.10.6flink-docker:javaf

使用docker-compose进行构建集群并运行

Linux:cat /proc/version
docker: Docker version 20.10.6
flink-docker: java flink 版本
docker-compose: docker-compose version 1.29.2
docker-Docker Compose -- Kubernetes
01.应用程序 docker化-dockerfile: 构建单个服务镜像,以脚本形式
02. Docker Compose 与Kubernetes相比,Docker Compose非常轻巧
允许开发人员在单个YAML文件中定义基于容器的应用程序。 此定义包括使用的Docker映像,暴露的端口,依赖项,网络等
Docker Compose环境中,所有容器均在一台主机上运行。 Docker Compose创建了一个本地网络,这些容器都是容器的一部分
03.Kubernetes通常使用多个节点,可以动态添加或删除这些节点 -Kubernetes通常在称为节点的多个服务器上运行-多节点管理Docker

0.前置操作:

安装好docker
安装好docker-compose
cp docker-compose-Linux-x86_64 /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

1.使用docker-compose进行构建--Docker Compose单台主机

01.安装docker-compose
安装后执行命令进行验证 docker-compose --version
02.创建一个名为docker-compose.yml的文件-编辑内容后,保存
version: '2'
services:
jobmanager:
image: flink:latest
environment:
- JOB_MANAGER_RPC_ADDRESS=jobmanager
expose:
- "6123"
ports:
- 8081:8081/tcp
command:
- jobmanager
taskmanager:
image: flink:latest
expose:
- "6121"
- "6122"
depends_on:
- jobmanager
environment:
- JOB_MANAGER_RPC_ADDRESS=jobmanager
command:
- taskmanager

03.在docker-compose.yml所在的文件夹内执行
cd ~/soft
docker-compose up -d

2.执行Flink程序

sudo docker exec -it 388e6e988070 /bin/bash
/opt/flink/bin/flink run /opt/flink/examples/batch/WordCount.jar

3.过程和原理解释

flink docker启动flink容器的时候,会执行镜像中官方定制的docker-entrypoint.sh脚本文件
docker logs [容器名]命令查看日 排查日志
docker history : 查看指定镜像的创建历史
docker inspect : 获取容器/镜像的元数据

4. docke镜像变成可变配置

dockefile
FROM RUN ENV ENTRYPOINT CMD COPY
01.Docker ENTRYPOINT & CMD 理解与实践
Dockerfiles for building Docker images for Apache Flink
Dockerfile 文件中,通常都是 ENTRYPOINT 字段会是这样:
ENTRYPOINT ["docker-entrypoint.sh"]
位置 /docker-entrypoint.sh
docker-entrypoint.sh脚本 CONF_FILE="${FLINK_HOME}/conf/flink-conf.yaml"
配置文件docker中的位置 /opt/flink/conf/flink-conf.yml
02.gosu是个工具,用来提升指定账号的权限,作用与sudo命令类似,而docker中使用gosu的起源来自安全问题
docker-compose的yml文件

5.将docker-compose 迁移到k8s

Docker Compose块将转换为两个单独的部分,即Deployment和Service

参考:

https://github.com/apache/flink-docker
使用Docker搭建Flink集群 https://www.icode9.com/content-4-642370.html
https://nightlies.apache.org/flink/flink-docs-release-1.13/docs/deployment/resource-providers/standalone/docker/


推荐阅读
  • 本文详细介绍了在 CentOS 7 系统中配置 fstab 文件以实现开机自动挂载 NFS 共享目录的方法,并解决了常见的配置失败问题。 ... [详细]
  • php更新数据库字段的函数是,php更新数据库字段的函数是 ... [详细]
  • 本文介绍了如何利用Shell脚本高效地部署MHA(MySQL High Availability)高可用集群。通过详细的脚本编写和配置示例,展示了自动化部署过程中的关键步骤和注意事项。该方法不仅简化了集群的部署流程,还提高了系统的稳定性和可用性。 ... [详细]
  • 在本文中,我们将探讨如何在Docker环境中高效地管理和利用数据库。首先,需要安装Docker Desktop以确保本地环境准备就绪。接下来,可以从Docker Hub中选择合适的数据库镜像,并通过简单的命令将其拉取到本地。此外,我们还将介绍如何配置和优化这些数据库容器,以实现最佳性能和安全性。 ... [详细]
  • Amoeba 通过优化 MySQL 的读写分离功能显著提升了数据库性能。作为一款基于 MySQL 协议的代理工具,Amoeba 能够高效地处理应用程序的请求,并根据预设的规则将 SQL 请求智能地分配到不同的数据库实例,从而实现负载均衡和高可用性。该方案不仅提高了系统的并发处理能力,还有效减少了主数据库的负担,确保了数据的一致性和可靠性。 ... [详细]
  • 在本地环境中部署了两个不同版本的 Flink 集群,分别为 1.9.1 和 1.9.2。近期在尝试启动 1.9.1 版本的 Flink 任务时,遇到了 TaskExecutor 启动失败的问题。尽管 TaskManager 日志显示正常,但任务仍无法成功启动。经过详细分析,发现该问题是由 Kafka 版本不兼容引起的。通过调整 Kafka 客户端配置并升级相关依赖,最终成功解决了这一故障。 ... [详细]
  • JUC(三):深入解析AQS
    本文详细介绍了Java并发工具包中的核心类AQS(AbstractQueuedSynchronizer),包括其基本概念、数据结构、源码分析及核心方法的实现。 ... [详细]
  • 本文介绍了在 Java 编程中遇到的一个常见错误:对象无法转换为 long 类型,并提供了详细的解决方案。 ... [详细]
  • 在 Ubuntu 中遇到 Samba 服务器故障时,尝试卸载并重新安装 Samba 发现配置文件未重新生成。本文介绍了解决该问题的方法。 ... [详细]
  • 基于Web的Kafka管理工具Kafkamanager首次访问Web界面的详细配置指南(附图解)
    首次访问Kafkamanager Web界面时,需要对Kafka集群进行配置。这一过程相对简单,用户只需依次点击【Cluster】>【Add Cluster】,按照提示完成相关设置即可。本文将通过图文并茂的方式,详细介绍每一步的配置步骤,帮助用户快速上手Kafkamanager。 ... [详细]
  • 在项目开发中,我们搭建了私有的Maven仓库服务器,以方便管理和下载所需的JAR包。然而,某些外部JAR包可能无法从公共Maven仓库获取,或者我们自行开发了一些仅供公司内部使用的插件,这些都需要上传到私有仓库中进行共享。本文详细介绍了如何使用Maven命令行工具将这些第三方JAR包部署至Nexus仓库服务器,确保团队成员能够轻松访问和使用这些资源。 ... [详细]
  • 在使用 Cacti 进行监控时,发现已运行的转码机未产生流量,导致 Cacti 监控界面显示该转码机处于宕机状态。进一步检查 Cacti 日志,发现数据库中存在 SQL 查询失败的问题,错误代码为 145。此问题可能是由于数据库表损坏或索引失效所致,建议对相关表进行修复操作以恢复监控功能。 ... [详细]
  • 服务器部署中的安全策略实践与优化
    服务器部署中的安全策略实践与优化 ... [详细]
  • Maven Web项目创建时JSP文件常见错误及解决方案
    Maven Web项目创建时JSP文件常见错误及解决方案 ... [详细]
  • 数字图书馆近期展出了一批精选的Linux经典著作,这些书籍虽然部分较为陈旧,但依然具有重要的参考价值。如需转载相关内容,请务必注明来源:小文论坛(http://www.xiaowenbbs.com)。 ... [详细]
author-avatar
End---的天空_808
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有