当前位置: 首页 > article >正文

Docker镜像启动

Docker 网络配置

创建自己的Docker网络

–subnet 子网 e.g. 192.168.0.0
网络模式 bridge、host、none、container
–gateway 网关ip 192.168.0.1

docker network create --subnet 192.168.0.0/16 --gateway 192.168.0.1 mynet(默认为bridge模式)

网络其他命令

docker network rm mynet
docker network ls

docker容器使用自创的网络

docker run --d -name xxx --net mynet xxx
e.g. docker run -d --net mynet --name zookeeper -p 2181:2181 wurstmeister/zookeeper

Flink

docker run -d -p 8081:8081 flink:1.10.0

Kafka

docker run -d --net mynet --name zookeeper -p 2181:2181 wurstmeister/zookeeper

(注意,kafka如果设置zk的ip为localhost会连接失败,因为kafka在容器中独占一个ip,zk在容器中独占一个ip,导致kafka连不到zk,需要查看zk的ip并连接才行)

(对kafka来说,它是容器内的组件,所以连不到zk;zk也是容器内的组件,它也连不到kafka,但是本地却可以直接localhost连接kafka,为什么呢?因为kafka虽然运行在容器中,但是它对外暴露了9092端口,映射到了本地的9092,所以我本地访问9092可以访问到;其实本地访问zk也可以访问到,但是zk和kafka是访问不到的,因为它们两个不是同一个网络,—但在同一个局域网)

docker run -d --name kafka --net mynet -e KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181 -e KAFKA_LISTENERS=PLAINTEXT://:9092 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://localhost:9092 -e TZ=Asia/Shanghai -e KAFKA_LOG_DIRS=/kafka/data -v D:\kafka_data:/kafka/data -p 9092:9092 wurstmeister/kafka:2.11-1.0.2

为什么Windows无法访问Kafka

首先,我创建了192.168.0.0的net,并让所有的容器都使用了这个网络
其次,我可以使用localhost:6379访问Redis,证明不是Docker的问题,而是Kafka的配置问题
那么,重点就放在listeners和advertised.listeners上了

在内网环境的Kafka集群不需要advertised.listeners,advertised.listeners用于Kafka对外暴露服务用的

Docker的网络通信

都通过Docker路由进行和宿主机交互的

Redis

docker run --name redis -d ^
–restart unless-stopped ^
-e TZ=Asia/Shanghai ^
-p 6379:6379 ^
-v D:\Develop\Docker\Data\redis\redis.conf:/etc/redis/redis.conf ^
-v D:\Develop\Docker\Data\redis\data:/data ^
redis:5.0.12 ^
redis-server /etc/redis/redis.conf ^
–requirepass 123456 ^
-net mynet ^
–appendonly yes


http://www.kler.cn/a/445334.html

相关文章:

  • ubuntu18.04升级到ubuntu20.04
  • Python-存储数据-Thu-Fri
  • cenos如何升级git到2以上版本
  • 系统思考—战略共识
  • 基础数据结构---栈
  • android 登录界面编写
  • vue下拉加载页面切换回到当前滚动位置
  • 【Linux进程】进程间的通信
  • Dependency Check命令行方式扫描jar包的安全漏洞
  • VMWare 的克隆操作
  • NOTEBOOK_11 汽车电子设备分享(工作经验)
  • 解决小程序中ios可以正常滚动,而Android失效问题
  • pytorch repeat方法和expand方法的区别
  • BigBlueButton视频会议 vs 华为云会议的详细对比
  • Apache Tomcat 漏洞CVE-2024-50379条件竞争文件上传漏洞 servlet readonly spring boot 修复方式
  • VR虚拟展馆如何平衡用户隐私保护与数据收集?
  • django的model中定义【记录修改次数】的这个字段该用什么类型
  • WEB开发: Node.js路由之由浅入深- 即拿即用完整版
  • 12种Vue设计模式
  • 梳理Nginx 的七大应用场景
  • Gin-vue-admin(2):项目创建前端一级页面和二级页面
  • Hadoop、Hbase使用Snappy压缩
  • 十二月第14讲:使用Python实现两组数据纵向排序
  • Go语言启动独立进程
  • DeepSeek-V2的多头潜在注意力机制及其在开源Mixture-of-Experts (MoE)语言模型中的应用
  • 【c++】自定义头文件与CMakeLists.txt添加