Howdy! Sorry if this is a supid question. I’ve been trying to get this working for like 5 days and I’ve been researching and reading docs, but I’m just not getting it. I’m fairly new to selfhosing and I’m trying to set up Jellyfin remote access on my NAS. My NAS is a QNAP product running QTS (which I absolutely hate). QTS uses their own weird version of Docker.

When I start Caddy with a docker compose file, I get an error that port 443 is in use and the container can’t be started. If I create a container in the Container Station app directly from the Docker Image, it starts up fine. Container Station handles environment variables in a dumb way so I am having trouble specifying the Caddyfile location when I do it that way.

Does anyone know why it works fine in that way but not the other? Both use port 443 but when I do it in a docker compose file, it says the port is in use but when I do it the other way, it doesn’t and starts fine.

Note: I know you can do this with Tailscale also, but I want to use my custom domain to make it easier for sharing in the future.

  • theit8514@lemmy.world
    link
    fedilink
    English
    arrow-up
    2
    ·
    6 hours ago

    If I had to guess, the container station might be giving the docker container a new network/ip address, one that the NAS is not using so that port 443 works and doesn’t conflict with the NAS. If you start the container station then inspect the container you might see how they do it, but macvlan is typically how you would configure it.

    services:
      my-lan-service:
        image: nginx:latest
        container_name: lan_container
        # 1. Attach the service to the custom macvlan network
        networks:
          lan_network:
            ipv4_address: 192.168.1.200  # The dedicated LAN IP for this container
        # 2. Ports are exposed directly to the LAN; do NOT use the "ports" block
        restart: unless-stopped
    
    networks:
      lan_network:
        driver: macvlan
        driver_opts:
          parent: eth0                  # Change to your host's physical network interface name
        ipam:
          config:
            - subnet: 192.168.1.0/24    # Matches your physical local network setup
              gateway: 192.168.1.1      # Your physical router IP