Connection refused occured when I trying to connect to Redis that run in Docker in WSL2 (Ubuntu 18.04)

Edison Tony 1 Reputation point
2020-07-28T08:14:15.023+00:00

Never happened before, but today I upgrade Windows preview version, and an exception occured (Connection Refused: connect).

Redis runs in a Docker container and Docker runs in WSL2 (Ubuntu 18.04), and also there are a Mongodb database and a Mysql database running in docker. I cannot connect to Mongodb(by Java) or Redis (by Jedit) but Mysql is well (by Navicat or Java).

Then, I write a simple java program with Jedis to connect to Redis, it works failed in Windows but successful in WSL2. And I also connect to Redis with telnet command, it works successful in Windows and WSL2.

Windows Version: 10.0.20175.1000, Insider Preview, Build 20175.re_prerelease.200717-1349
Linux in WSL2: Ubuntu 18.04
Docker Version: 19.03.8
Mongodb and Redis: latest
Mysql: 5.6
Jedis: 2.7.2

Exception in thread "main" redis.clients.jedis.exceptions.JedisConnectionException: java.net.ConnectException: Connection refused: connect
at redis.clients.jedis.Connection.connect(Connection.java:155)
at redis.clients.jedis.BinaryClient.connect(BinaryClient.java:83)
at redis.clients.jedis.Connection.sendCommand(Connection.java:94)
at redis.clients.jedis.BinaryClient.set(BinaryClient.java:100)
at redis.clients.jedis.Client.set(Client.java:29)
at redis.clients.jedis.Jedis.set(Jedis.java:65)
at com.ty.tissue.config.TissueConfig.main(TissueConfig.java:105)
Caused by: java.net.ConnectException: Connection refused: connect
at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:85)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:589)
at redis.clients.jedis.Connection.connect(Connection.java:149)
... 6 more

help me, thanks.

Windows 10 Setup
Windows 10 Setup
Windows 10: A Microsoft operating system that runs on personal computers and tablets.Setup: The procedures involved in preparing a software program or application to operate within a computer or mobile device.
1,923 questions
0 comments No comments
{count} votes

1 answer

Sort by: Most helpful
  1. Teemo Tang 11,376 Reputation points
    2020-07-29T03:03:01.863+00:00

    Welcome to Microsoft Q&A Platform.
    The latest Insider Preview version is just used for test potential bug and new functions, it’s normal to meet with issue, you could feedback this connection issue here
    https://learn.microsoft.com/en-us/windows-insider/at-home/feedback
    Now I suggest to roll back to preview version and continue using your java program in WSL 2, wait for update or RTM version from Microsoft.

    0 comments No comments