win2008iis7配置网站,宿州网站建设哪家好,网站开发与管理期末考试,哪个网站可以做视频播放器文章目录 一. 默认网络#xff1a;docker0网络的问题二. 自定义网络三. nginx容器指之间通过主机名进行内部通讯四. redis集群容器#xff08;跳过宿主机#xff09;内部网络通讯1. 集群描述2. 基于bitnami镜像的环境变量快速构建redis集群 一. 默认网络#xff1a;docker0… 文章目录 一. 默认网络docker0网络的问题二. 自定义网络三. nginx容器指之间通过主机名进行内部通讯四. redis集群容器跳过宿主机内部网络通讯1. 集群描述2. 基于bitnami镜像的环境变量快速构建redis集群 一. 默认网络docker0网络的问题
容器启动时docker0会给容器分配一个ip同一宿主机下其他容器可以通过此 ip:容器内部端口来访问此容器。
但是当容器重启时ip就变化了因为docker0不支持通过容器主机名来访问所以再次访问时还需要手动查找维护性很差生产环境不可用。
相关知识 Docker0 网卡是 Docker 默认的桥接网络模式的一部分。在这种模式下容器可以相互通信并且可以通过 Docker0 网卡与外部网络通信。当一个新的 Docker 容器被创建时Docker 会自动为该容器创建一对虚拟网络接口veth pair并将其中一个连接到 Docker0 网卡上另一个分配给容器内部的网络命名空间。在默认情况下Docker 容器会连接到一个名为 docker0 的虚拟以太网桥。容器通过这个桥接网络接口访问外部网络。容器的网络命名空间中的虚拟网络接口veth pair的一端连接到 docker0 另一端连接到容器内部。当容器尝试访问外部网络时数据包会通过 docker0 被转发到宿主机的网络接口然后发送到外部网络。桥接模式是如何访问接口的ing 二. 自定义网络
通过自定义网络 创建自定义网络容器名就是稳定域名。
# 创建自定义网络
docker network create gao--network gao 三. nginx容器指之间通过主机名进行内部通讯
# 创建两个容器
docker run -d -p 8819:80 --name app-nginx-1 --network gao nginx
docker run -d -p 8820:80 --name app-nginx-2 --network gao nginx # 进入到app-nginx-2 访问app-nginx-1的ngnix
docker exec -it app-nginx-2 bash root9580927c07a8:/# curl http://app-nginx-1:80
!DOCTYPE html
html
head
titleWelcome to nginx!/title
style
html { color-scheme: light dark; }
body { width: 35em; margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif; }
/style
。。。 四. redis集群容器跳过宿主机内部网络通讯
1. 集群描述 2. 基于bitnami镜像的环境变量快速构建redis集群 基于bitnami 的redis搭建集群https://hub.docker.com/r/bitnami/redis 利用bitnami创建的redis集群不需要写配置文件只需要根据文档设置好环境变量就行 创建网络以及redis主从集群
docker network create redis-netdocker run -d -p 6379:6379 \
-v /Users/lianggao/MyWorkSpace/001-360/002-docker-demo/redis/redis01:/bitnami/redis/data \
-e REDIS_REPLICATION_MODEmaster \
-e REDIS_PASSWORD123456 \
--network redis-net --name redis01 \
bitnami/redis# slave配置master的信息看到master主机名就是容器名
docker run -d -p 6380:6379 \
-v /Users/lianggao/MyWorkSpace/001-360/002-docker-demo/redis/redis02:/bitnami/redis/data \
-e REDIS_REPLICATION_MODEslave \
-e REDIS_MASTER_HOSTredis01 \
-e REDIS_MASTER_PORT_NUMBER6379 \
-e REDIS_MASTER_PASSWORD123456 \
-e REDIS_PASSWORD123456 \
--network redis-net --name redis02 \
bitnami/redis客户端连接 客户端下载地址https://github.com/qishibo/AnotherRedisDesktopManager ip和地址配置宿主机的 测试 看到master添加了keyslave也同步了。