Skip to content

[Bug] Updating containers with macvlan networking breaks static IP configuration #54

@sampl3x

Description

@sampl3x

What’s the bug?

[BUG] Updating a container through Tugtainer causes macvlan network configuration and static container IPs to be lost.

Description

When a container that uses a macvlan network with a static IPv4 address is updated via Tugtainer, the container is recreated without the original network settings.

After the update:
• The container is no longer attached to the macvlan network
• The container receives a random IP (e.g. 192.168.0.2) or is moved to the default bridge network
• The configured ipv4_address: in docker-compose.yml is ignored
• The external macvlan network (lan) is not reapplied

This behavior does not occur when updating the container normally using the docker-compose.yml:

docker compose pull
docker compose up -d

So the issue appears to be related to how Tugtainer handles the container recreation process.

Expected behaviour

Tugtainer should: Recreate containers with their original macvlan configuration of the docker container

To reproduce

1.	Create a container using docker-compose with a macvlan network:
services:
  yadnsb:
    image: ghcr.io/example
    container_name: yadnsb
    networks:
      lan:
        ipv4_address: 192.168.0.201
networks:
  lan:
    external: true
    name: lan
2.	Confirm the container has the correct IP:
docker exec -it yadnsb ip a
# → 192.168.0.201
3.	Update the container using Tugtainer’s Update function
4.	Check the network again:
docker exec -it yadnsb ip a

Result:
Container now has an unexpected IP (e.g. 192.168.0.2) and no longer sits on the macvlan network.

Platform

Terramaster NAS TOS6

Versions

Tugtainer Docker image: quenary/tugtainer:latest v1.7.0

Relevant log output

Extra

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions