containers / containers/podman-compose
netavark and nftables did not return a successful result on Fedora Remix for WSL but works in Podman Desktop
- Dominant language
- Python
- Stars
- 6.2k
- Forks
- 622
- PR merge metrics
- No merged PRs in 30d
Description
# **Describe the bug**
> A clear and concise description of what the bug is.
I am trying to run a `docker-compose.yaml` with a single service for testing. However, when ran with **Fedora Remix for WSL** v41 with latest Podman and Podman-Compose, I get an error that netavark cannot get a successful return code from nftables (Net Filter Tables).
**To Reproduce**
Steps to reproduce the behavior:
1. Given a directory with a `docker-compose.yaml` file, execute `podman compose up`
2. Wait for podman to pull the postgres image.
3. Wait for postgres to initalize,
4. Emit error.
please use [minimal reproducible example](https://stackoverflow.com/help/minimal-reproducible-example) for example give me a small busybox-based compose yaml
# **Expected behavior**
> A clear and concise description of what you expected to happen.
Podman Compose start the Services / Containers and initalize the database.
This works with regular Podman, and when I use Podman Desktop's `podman compose` on Windows using WSL in `podman-machine-default`.
# **Actual behavior**
> What is the behavior you actually got and that should not happen.
```bash
➜ python_web_app
export PODMAN_IGNORE_CGROUPSV1_WARNING=true
➜ python_web_app
podman compose up postgres
>>>> Executing external compose provider "/usr/bin/podman-compose". Please see podman-compose(1) for how to disable this message. <<<<
738720850c3e9eb06b8b48403f093a1bfe2568e819afa7ccc5dc26d9279a159c
[postgres] | internal:0:0-0: Error: Could not process rule: No such file or directory
[postgres] |
[postgres] | internal:0:0-0: Error: Could not process rule: No such file or directory
[postgres] |
[postgres] | Error: unable to start container 738720850c3e9eb06b8b48403f093a1bfe2568e819afa7ccc5dc26d9279a159c: netavark: nftables error: nft did not return successfully while applying ruleset
➜ python_web_app
```
# **Output**
```
➜ python_web_app
podman-compose version
podman-compose version 1.3.0
podman version 5.3.2
➜ python_web_app
podman --version
podman version 5.3.2
➜ python_web_app
podman compose version
WARN[0000] Using cgroups-v1 which is deprecated in favor of cgroups-v2 with Podman v5 and will be removed in a future version. Set environment variable `PODMAN_IGNORE_CGROUPSV1_WARNING` to hide this warning.
>>>> Executing external compose provider "/usr/bin/podman-compose". Please see podman-compose(1) for how to disable this message. <<<<
podman-compose version 1.3.0
podman version 5.3.2
➜ python_web_app
export PODMAN_IGNORE_CGROUPSV1_WARNING=true
➜ python_web_app
podman compose up postgres
>>>> Executing external compose provider "/usr/bin/podman-compose". Please see podman-compose(1) for how to disable this message. <<<<
738720850c3e9eb06b8b48403f093a1bfe2568e819afa7ccc5dc26d9279a159c
[postgres] | internal:0:0-0: Error: Could not process rule: No such file or directory
[postgres] |
[postgres] | internal:0:0-0: Error: Could not process rule: No such file or directory
[postgres] |
[postgres] | Error: unable to start container 738720850c3e9eb06b8b48403f093a1bfe2568e819afa7ccc5dc26d9279a159c: netavark: nftables error: nft did not return successfully while applying ruleset
```
# **Environment:**
- OS: Windows (host), Fedora Linux (WSL in Fedora Remix for WSL)
- podman version: 5.3.2
- podman compose version: 1.3.0
# **Additional context**
> Add any other context about the problem here.
fastfetch of Fedora Remix for WSL
```bash
➜ python_web_app
fastfetch
.',;::::;,'. pdudley@AZJ-L-5M6GJR3
.';:cccccccccccc:;,. ---------------------
.;cccccccccccccccccccccc;. OS: Generic 41 (Generic) x86_64
.:cccccccccccccccccccccccccc:. Host: Windows Subsystem for Linux - fedoraremix (2.4.11)
.;ccccccccccccc;.:dddl:.;ccccccc;. Kernel: Linux 5.15.167.4-microsoft-standard-WSL2
.:ccccccccccccc;OWMKOOXMWd;ccccccc:. Uptime: 1 day, 1 hour, 7 mins
.:ccccccccccccc;KMMc;cc;xMMc;ccccccc:. Packages: 930 (rpm)
,cccccccccccccc;MMM.;cc;;WW:;cccccccc, Shell: zsh 5.9
:cccccccccccccc;MMM.;cccccccccccccccc: Display (rdp-0): 2560x1440 @ 60 Hz
:ccccccc;oxOOOo;MMM000k.;cccccccccccc: WM: WSLg 1.0.65 (Wayland)
cccccc;0MMKxdd:;MMMkddc.;cccccccccccc; Terminal: node
ccccc;XMO';cccc;MMM.;cccccccccccccccc' CPU: 12th Gen Intel(R) Core(TM) i9-12900H (20) @ 2.92 GHz
ccccc;MMo;ccccc;MMW.;ccccccccccccccc; GPU 1: Microsoft Basic Render Driver
ccccc;0MNc.ccc.xMMd;ccccccccccccccc; GPU 2: Microsoft Basic Render Driver
cccccc;dNMWXXXWM0:;cccccccccccccc:, Memory: 1.18 GiB / 15.46 GiB (8%)
cccccccc;.:odl:.;cccccccccccccc:,. Swap: 0 B / 4.00 GiB (0%)
ccccccccccccccccccccccccccccc:'. Disk (/): 27.11 GiB / 1006.85 GiB (3%) - ext4
:ccccccccccccccccccccccc:;,.. Disk (/mnt/c): 206.50 GiB / 471.56 GiB (44%) - 9p
':cccccccccccccccc::;,. Local IP (eth0): 172.30.132.7/20
Battery (Microsoft Hyper-V Virtual Batte): 100% [AC Connected]
Locale: en_US.UTF-8
```
os-release for Fedora Remix for WSL
```bash
➜ python_web_app
cat /etc/os-release
NAME=Generic
VERSION="41 (Generic)"
ID=generic
ID_LIKE=fedora
VERSION_ID=41
PRETTY_NAME="Generic 41 (Generic)"
ANSI_COLOR="0;34"
LOGO=generic-logo-icon
CPE_NAME="cpe:/o:generic:generic:41"
HOME_URL="http://www.zombo.com/"
SUPPORT_URL="https://en.wikipedia.org/wiki/Help!_(album)"
BUG_REPORT_URL="https://youtu.be/CSemARaqGqE"
REDHAT_BUGZILLA_PRODUCT="Generic"
REDHAT_BUGZILLA_PRODUCT_VERSION=%{bug_version}
REDHAT_SUPPORT_PRODUCT="Generic"
REDHAT_SUPPORT_PRODUCT_VERSION=%{bug_version}
PRIVACY_POLICY_URL="http://nsa.gov"
```
podman info
```bash
➜ python_web_app
podman info
host:
arch: amd64
buildahVersion: 1.38.1
cgroupControllers: []
cgroupManager: cgroupfs
cgroupVersion: v1
conmon:
package: conmon-2.1.12-3.fc41.x86_64
path: /usr/bin/conmon
version: 'conmon version 2.1.12, commit: '
cpuUtilization:
idlePercent: 99.94
systemPercent: 0.03
userPercent: 0.03
cpus: 20
databaseBackend: sqlite
distribution:
distribution: generic
version: "41"
eventLogger: file
freeLocks: 2043
hostname: AZJ-L-5M6GJR3
idMappings:
gidmap:
- container_id: 0
host_id: 1000
size: 1
- container_id: 1
host_id: 165536
size: 65536
uidmap:
- container_id: 0
host_id: 1000
size: 1
- container_id: 1
host_id: 165536
size: 65536
kernel: 5.15.167.4-microsoft-standard-WSL2
linkmode: dynamic
logDriver: journald
memFree: 14666043392
memTotal: 16599330816
networkBackend: netavark
networkBackendInfo:
backend: netavark
dns:
package: aardvark-dns-1.14.0-1.fc41.x86_64
path: /usr/libexec/podman/aardvark-dns
version: aardvark-dns 1.14.0
package: netavark-1.14.0-1.fc41.x86_64
path: /usr/libexec/podman/netavark
version: netavark 1.14.0
ociRuntime:
name: crun
package: crun-1.20-2.fc41.x86_64
path: /usr/bin/crun
version: |-
crun version 1.20
commit: 9c9a76ac11994701dd666c4f0b869ceffb599a66
rundir: /mnt/wslg/runtime-dir/crun
spec: 1.0.0
+SYSTEMD +SELINUX +APPARMOR +CAP +SECCOMP +EBPF +CRIU +LIBKRUN +WASM:wasmedge +YAJL
os: linux
pasta:
executable: /usr/bin/pasta
package: passt-0^20250217.ga1e48a0-2.fc41.x86_64
version: ""
remoteSocket:
exists: true
path: /mnt/wslg/runtime-dir/podman/podman.sock
rootlessNetworkCmd: pasta
security:
apparmorEnabled: false
capabilities: CAP_CHOWN,CAP_DAC_OVERRIDE,CAP_FOWNER,CAP_FSETID,CAP_KILL,CAP_NET_BIND_SERVICE,CAP_SETFCAP,CAP_SETGID,CAP_SETPCAP,CAP_SETUID,CAP_SYS_CHROOT
rootless: true
seccompEnabled: true
seccompProfilePath: /usr/share/containers/seccomp.json
selinuxEnabled: false
serviceIsRemote: false
slirp4netns:
executable: /usr/bin/slirp4netns
package: slirp4netns-1.3.1-1.fc41.x86_64
version: |-
slirp4netns version 1.3.1
commit: e5e368c4f5db6ae75c2fce786e31eef9da6bf236
libslirp: 4.8.0
SLIRP_CONFIG_VERSION_MAX: 5
libseccomp: 2.5.5
swapFree: 4294967296
swapTotal: 4294967296
uptime: 25h 9m 8.00s (Approximately 1.04 days)
variant: ""
plugins:
authorization: null
log:
- k8s-file
- none
- passthrough
- journald
network:
- bridge
- macvlan
- ipvlan
volume:
- local
registries:
search:
- registry.fedoraproject.org
- registry.access.redhat.com
- docker.io
store:
configFile: /home/pdudley/.config/containers/storage.conf
containerStore:
number: 1
paused: 0
running: 0
stopped: 1
graphDriverName: overlay
graphOptions: {}
graphRoot: /home/pdudley/.local/share/containers/storage
graphRootAllocated: 1081101176832
graphRootUsed: 29105569792
graphStatus:
Backing Filesystem: extfs
Native Overlay Diff: "true"
Supports d_type: "true"
Supports shifting: "false"
Supports volatile: "true"
Using metacopy: "false"
imageCopyTmpDir: /var/tmp
imageStore:
number: 1
runRoot: /mnt/wslg/runtime-dir/containers
transientStore: false
volumePath: /home/pdudley/.local/share/containers/storage/volumes
version:
APIVersion: 5.3.2
Built: 1737504000
BuiltTime: Tue Jan 21 18:00:00 2025
GitCommit: ""
GoVersion: go1.23.4
Os: linux
OsArch: linux/amd64
Version: 5.3.2
```
docker-compose.yaml
```yaml
---
services:
postgres: # PostgreSQL Database Server
image: "docker.io/library/postgres:alpine"
ports:
- 5432:5432
environment:
POSTGRES_PASSWORD: mysecretpassword
POSTGRES_DB: mytestdb
```
I want to reiterate that this is directly in WSL using **Fedora Remix for WSL**. When I use **Podman Desktop** this works as intended, however, I would rather work wholly in WSL.
Contributor guide
Assessment
This issue has not been assessed yet.