abiosoft / abiosoft/colima

Containers in emulated x86_64 VM become unreachable after a while (connection refused)

未关闭
#962 8 条评论 16 个 reaction 已指派 0 人 在 GitHub 查看
主要语言
Go
星标
30.8k
派生
613
PR 合并指标
30 天内没有已合并 PR

描述

### Description

After switching from an Intel mac to an ARM mac, the x86_64 Colima VM sometimes ends up in a broken state, where no containers are reachable. Any requests made towards exposed ports receive "connection refused". It can only be resolved by some combination of recreating the VM and rebooting my mac. Restarting the containers or the VM has no effect.

### Version

colima version 0.6.7
git commit: ba1be00e9aec47f2c1ffdacfb7e428e465f0b58a

runtime: docker
arch: aarch64
client: v24.0.7
server: v24.0.7
limactl version 0.19.1
qemu-img version 8.2.0
Copyright (c) 2003-2023 Fabrice Bellard and the QEMU Project developers

### Operating System

- [ ] macOS Intel <= 13 (Ventura)
- [ ] macOS Intel >= 14 (Sonoma)
- [ ] Apple Silicon <= 13 (Ventura)
- [X] Apple Silicon >= 14 (Sonoma)
- [ ] Linux

### Output of `colima status`

```
colima status
INFO[0000] colima is running using macOS Virtualization.Framework
INFO[0000] arch: aarch64
INFO[0000] runtime: docker
INFO[0000] mountType: virtiofs
INFO[0000] socket: unix:///Users/user/.colima/default/docker.sock
```

```
colima status x86
INFO[0000] colima [profile=x86] is running using macOS Virtualization.Framework
INFO[0000] arch: x86_64
INFO[0000] runtime: docker
INFO[0000] mountType: virtiofs
INFO[0000] socket: unix:///Users/user/.colima/x86/docker.sock
```

### Reproduction Steps

1. I'm running two VMs, one aarch64 and one x86_64. These are created using `colima start --cpu 4 --memory 16 --disk 100` and `colima start --cpu 2 --memory 8 --disk 75 --profile x86 --arch x86_64`, respectively.
2. At first, everything works as expected. I switch between docker contexts and start and stop services in both VMs using docker compose.
3. After some hours/days, the containers in the x86_64 VM stop responding to network requests. I can stop them and start them without issue. Their logs contain no errors. However, they cannot be reached. To test this: `docker run -p 8080:80 nginx`, then `telnet localhost 8080` should answer "Connected to localhost", however answers "Connection refused".

### Expected behaviour

Expect that healthy containers are reachable.

### Additional context

I appreciate any help towards how I can debug this and provide further information.

贡献指南

这个仓库没有索引到贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。