小编nis*_*ant的帖子

无法从另一个Docker容器连接到Redis

我正在docker容器中运行redis-server。它在127.0.0.1端口6379上运行。

在容器中:在容器中时, 我能够连接到redis服务器,并且可以毫无问题地处理命令。

从主机: 当我使用redis-cli Monitor从主机到容器执行redis-cli时,出现错误:服务器关闭了连接。

如果我只是这样做redis-cli,它会提示您;

127.0.0.1:6379> 
127.0.0.1:6379> set www yee
Error: Server closed the connection
Run Code Online (Sandbox Code Playgroud)

似乎docker暴露了正确的端口,并且docker端口映射正在运行。失败不是在建立连接时发生的,而是连接很快就终止了。

从同一docker(网桥)网络上的另一个容器中:

redis.on('error', function(err) {    
        logger.error('Redis error: ' + err);
    } );

Redis error: Redis connection to 172.18.0.2:6379 failed - connect ECONNREFUSED 172.18.0.2:6379
Run Code Online (Sandbox Code Playgroud)

我的redis.conf档案有protected-mode no

日志记录设置为调试,但是日志上没有任何信息表明尝试建立连接并拒绝连接。

Redis客户端会继续重试超时,但是每次它被拒绝连接时。我尝试在docker网络上使用容器名称(作为主机名)和容器IP地址,在两种情况下,结果都是相同的。

docker network create redisnet
docker run --name redis -p 6379:6379 -d --net "redisnet" redis-server
docker run --name apiserver -p 81:8080 --net "redisnet" -d api-server

If I try to ping it …
Run Code Online (Sandbox Code Playgroud)

networking containers redis docker

4
推荐指数
3
解决办法
5900
查看次数

使用 google.maps 时出现打字稿错误 - 'google' 未定义

我在 package.json 中有以下内容

"@types/google.maps": "~3.48.3",
Run Code Online (Sandbox Code Playgroud)

// 在我的 tsx 文件中,顶部的第一行是

/// <reference types='google.maps' />
Run Code Online (Sandbox Code Playgroud)

但是在访问 google.maps.MapMouseEvent 时 - 我收到错误“google”未定义。第 980:43 行:“google”未定义 no-undef

980 号线是

onMarkerDragEnd = async (mapMouseEvent: google.maps.MapMouseEvent) => {
Run Code Online (Sandbox Code Playgroud)

//我也尝试过

/// <reference path='../../../../node_modules/@types/google.maps' />
Run Code Online (Sandbox Code Playgroud)

// 我也在 tsconfig.json 中尝试过

  "compilerOptions": {
    "types": [
      "google.maps"
    ]
  }
Run Code Online (Sandbox Code Playgroud)

但错误仍然存​​在。我正在使用编译打字稿

react-app-rewired build
Run Code Online (Sandbox Code Playgroud)

寻找有关如何在打字稿中使用 @types/google.maps 的任何提示。

google-maps build typescript react-app-rewired

2
推荐指数
1
解决办法
3692
查看次数