Puncte:0

S-ar putea să fi rupt maparea portului containerului

drapel cn
etd

Maparea portului nu funcționează. Nu știu dacă a fost ceva ce am făcut sau ce.

Înființat: Arch Linux cu kernel 5.16, Docker 20.10.12, folosind nginx-proxy cu însoțitorul său acme pentru a obține certificate pentru diverse aplicații în alte containere. Cu siguranță totul a funcționat bine.

Apoi dintr-o dată am început să primesc 502 erori de la proxy-ul nginx. Nu a putut ajunge la aplicațiile containerizate pe porturile pe care le-am specificat. După ce am investigat, am aflat că celelalte containere doar deschideau orice porturi doreau pe gazdă. Gazda chiar crede că portul specificat inițial este deschis, dar nu este. Deci, de exemplu, una dintre aplicațiile mele este doar nginx care servește din nou un site web. I-am spus lui Docker să mapeze portul 8001 pe gazdă să 80 în recipient. Și atunci când folosesc lsof pentru a arăta ce porturi sunt deschise pe gazdă, văd 8001 în uz. Dar atunci nu pot accesa nimic despre asta, îl pot accesa pe portul 80 (chiar dacă 80 este folosit și de proxy-ul nginx). nmap confirmă că doar portul 80 este de fapt deschis pe container.

Un lucru pe care l-am făcut recent a fost să schimb politica implicită în lanțul FORWARD din iptables. Nu văd de ce schimbarea valorii implicite ar conta pentru pachetele care erau deja direcționate undeva.

Configurare:

Configurarea containerului nginx-proxy:

[
    {
        „Id”: „e24130ccef2bce43a11ebe5686e9a0ca45a7b0b13e32c4649095d11fd0361123”,
        „Creat”: „2022-03-02T16:16:07.626095681Z”,
        „Cale”: „/app/docker-entrypoint.sh”,
        „Args”: [
            „renunț”,
            "start",
            "-r"
        ],
        "Stat": {
            „Stare”: „în rulare”,
            „Alergare”: adevărat,
            „Întrerupt”: fals,
            „Repornire”: fals,
            „OOMKilled”: fals,
            „Mort”: fals,
            „Pid”: 2767,
            „ExitCode”: 0,
            „Eroare”: „”,
            „StartedAt”: „2022-03-02T16:16:08.672491906Z”,
            „TerminatLa”: „0001-01-01T00:00:00Z”
        },
        „Imagine”: „sha256:82ea330a72d6f9d955287dc6e2c4c57a1466d480688574a4d0997c981bc495f3”,
        „ResolvConfPath”: „/var/lib/docker/containers/e24130ccef2bce43a11ebe5686e9a0ca45a7b0b13e32c4649095d11fd0361123/resolv.conf”,
        „HostnamePath”: „/var/lib/docker/containers/e24130ccef2bce43a11ebe5686e9a0ca45a7b0b13e32c4649095d11fd0361123/hostname”,
        „HostsPath”: „/var/lib/docker/containers/e24130ccef2bce43a11ebe5686e9a0ca45a7b0b13e32c4649095d11fd0361123/hosts”,
        „LogPath”: „/var/lib/docker/containers/e24130ccef2bce43a11ebe5686e9a0ca45a7b0b13e32c4649095d11fd0361123/e24130ccef2bce43a11ebe5686e9a0ca45a7b0b13e32c4649095d11fd0361123/e24130ccef2bce43a11ebe5686e9a0ca45a7b0b13e32c4649095d11fd0361123/e24130ccef2bce43a11ebe5686e9a0ca45a7b0b13e32,
        „Nume”: „/nginx-proxy”,
        „RestartCount”: 0,
        „Driver”: „btrfs”,
        "Platform": "linux",
        „MountLabel”: „”,
        „ProcessLabel”: „”,
        „AppArmorProfile”: „”,
        „ExecIDs”: nul,
        „HostConfig”: {
            „Leagă”: [
                „/var/run/docker.sock:/tmp/docker.sock:ro”
            ],
            „ContainerIDFile”: „”,
            „LogConfig”: {
                „Tip”: „fișier-json”,
                „Configurare”: {}
            },
            „NetworkMode”: „ivonet”,
            „PortBindings”: {
                „443/tcp”: [
                    {
                        „HostIp”: „”,
                        „HostPort”: „443”
                    }
                ],
                „80/tcp”: [
                    {
                        „HostIp”: „”,
                        „HostPort”: „80”
                    }
                ]
            },
            „RestartPolicy”: {
                „Nume”: „întotdeauna”,
                „Maximum RetryCount”: 0
            },
            „AutoRemove”: fals,
            „VolumeDriver”: „”,
            „VolumesFrom”: nul,
            „CapAdd”: nul,
            „CapDrop”: nul,
            „CgroupnsMode”: „privat”,
            „Dns”: nul,
            „DnsOptions”: nul,
            „DnsSearch”: nul,
            „ExtraHosts”: nul,
            „GroupAdd”: nul,
            „IpcMode”: „privat”,
            „Cgroup”: „”,
            „Legături”: nul,
            „OomScoreAdj”: 0,
            „PidMode”: „”,
            „Privilegiat”: fals,
            „PublishAllPorts”: fals,
            „ReadonlyRootfs”: fals,
            „SecurityOpt”: nul,
            „UTSMode”: „”,
            „UsernsMode”: „”,
            „ShmSize”: 67108864,
            „Runtime”: „runc”,
            „ConsoleSize”: [
                0,
                0
            ],
            "Izolare": "",
            „CpuShares”: 0,
            „Memorie”: 0,
            „NanoCpus”: 0,
            "CgroupParent": "",
            „BlkioWeight”: 0,
            „BlkioWeightDevice”: nul,
            „BlkioDeviceReadBps”: nul,
            „BlkioDeviceWriteBps”: nul,
            „BlkioDeviceReadIOps”: nul,
            „BlkioDeviceWriteIOps”: nul,
            „CpuPeriod”: 0,
            „CpuQuota”: 0,
            „CpuRealtimePeriod”: 0,
            „CpuRealtimeRuntime”: 0,
            "CpusetCpus": "",
            "CpusetMems": "",
            „Dispozitive”: nul,
            „DeviceCgroupRules”: null,
            „DeviceRequests”: nul,
            „KernelMemory”: 0,
            „KernelMemoryTCP”: 0,
            „Rezervare memorie”: 0,
            „Schimbare memorie”: 0,
            „MemorySwappiness”: nul,
            „OomKillDisable”: nul,
            „PidsLimit”: nul,
            „Ulimits”: nul,
            „CpuCount”: 0,
            „CpuPercent”: 0,
            „IOMaximumIOps”: 0,
            „IOMaximumBandwidth”: 0,
            „Monturi”: [
                {
                    „Tip”: „volum”,
                    „Sursa”: „nginx-proxy_conf”,
                    „Target”: „/etc/nginx/conf.d”,
                    „Opțiuni de volum”: {}
                },
                {
                    „Tip”: „volum”,
                    „Sursa”: „nginx-proxy_vhost”,
                    „Target”: „/etc/nginx/vhost.d”,
                    „Opțiuni de volum”: {}
                },
                {
                    „Tip”: „volum”,
                    „Sursa”: „nginx-proxy_html”,
                    „Target”: „/usr/share/nginx/html”,
                    „Opțiuni de volum”: {}
                },
                {
                    „Tip”: „volum”,
                    „Sursa”: „nginx-proxy_certs”,
                    „Target”: „/etc/nginx/certs”,
                    „ReadOnly”: adevărat,
                    „Opțiuni de volum”: {}
                }
            ],
            „MaskedPaths”: [
                „/proc/sound”,
                „/proc/acpi”,
                „/proc/kcore”,
                „/proc/keys”,
                „/proc/latency_stats”,
                „/proc/timer_list”,
                „/proc/timer_stats”,
                „/proc/sched_debug”,
                "/proc/scsi",
                „/sys/firmware”
            ],
            „ReadonlyPaths”: [
                "/proc/bus",
                „/proc/fs”,
                „/proc/irq”,
                „/proc/sys”,
                „/proc/sysrq-trigger”
            ]
        },
        „GraphDriver”: {
            „Date”: nul,
            „Nume”: „btrfs”
        },
        „Monturi”: [
            {
                „Tip”: „volum”,
                „Nume”: „nginx-proxy_html”,
                „Sursa”: „/var/lib/docker/volumes/nginx-proxy_html/_data”,
                „Destinație”: „/usr/share/nginx/html”,
                „Driver”: „local”,
                „Mod”: „z”,
                „RW”: adevărat,
                „Propagare”: „”
            },
            {
                „Tip”: „volum”,
                „Nume”: „nginx-proxy_certs”,
                „Sursa”: „/var/lib/docker/volumes/nginx-proxy_certs/_data”,
                „Destinație”: „/etc/nginx/certs”,
                „Driver”: „local”,
                „Mod”: „z”,
                „RW”: fals,
                „Propagare”: „”
            },
            {
                „Tip”: „lega”,
                „Sursa”: „/var/run/docker.sock”,
                „Destinație”: „/tmp/docker.sock”,
                "Mode": "ro",
                „RW”: fals,
                „Propagare”: „rprivat”
            },
            {
                „Tip”: „volum”,
                „Nume”: „nginx-proxy_conf”,
                „Sursa”: „/var/lib/docker/volumes/nginx-proxy_conf/_data”,
                „Destinație”: „/etc/nginx/conf.d”,
                „Driver”: „local”,
                „Mod”: „z”,
                „RW”: adevărat,
                „Propagare”: „”
            },
            {
                „Tip”: „volum”,
                „Nume”: „nginx-proxy_vhost”,
                „Sursa”: „/var/lib/docker/volumes/nginx-proxy_vhost/_data”,
                „Destinație”: „/etc/nginx/vhost.d”,
                „Driver”: „local”,
                „Mod”: „z”,
                „RW”: adevărat,
                „Propagare”: „”
            }
        ],
        „Configurare”: {
            „Nume gazdă”: „nginx-proxy”,
            "Numele domeniului": "",
            "Utilizator": "",
            „AttachStdin”: fals,
            „AttachStdout”: adevărat,
            „AttachStderr”: adevărat,
            „ExposedPorts”: {
                „443/tcp”: {},
                „80/tcp”: {}
            },
            „Tty”: fals,
            „OpenStdin”: fals,
            „StdinOnce”: fals,
            „Env”: [
                „PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin”,
                „NGINX_VERSION=1.21.6”,
                „NJS_VERSION=0.7.2”,
                „PKG_RELEASE=1”,
                „NGINX_PROXY_VERSION=0.10.1-29-gfb8ddfd”,
                „DOCKER_GEN_VERSION=0.8.2”,
                „DOCKER_HOST=unix:///tmp/docker.sock”
            ],
            „Cmd”: [
                „renunț”,
                "start",
                "-r"
            ],
            „Imagine”: „nginxproxy/nginx-proxy:alpine”,
            „Volume”: {
                „/etc/nginx/certs”: {},
                „/etc/nginx/conf.d”: {},
                „/etc/nginx/vhost.d”: {},
                „/tmp/docker.sock”: {},
                „/usr/share/nginx/html”: {}
            },
            „WorkingDir”: „/app”,
            "Punct de intrare": [
                „/app/docker-entrypoint.sh”
            ],
            „OnBuild”: nul,
            „Etichete”: {
                "com.docker.compose.config-hash": "3324b86760e2e436e707f1310aef7724e088d661c1bbeaaf573104e2644a08b0",
                „com.docker.compose.container-number”: „1”,
                "com.docker.compose.depends_on": "",
                "com.docker.compose.image": "sha256:82ea330a72d6f9d955287dc6e2c4c57a1466d480688574a4d0997c981bc495f3",
                "com.docker.compose.oneoff": "Fals",
                "com.docker.compose.project": "nginx-proxy",
                "com.docker.compose.project.config_files": "/home/winfield/contain/nginx-proxy/docker-compose.yaml",
                "com.docker.compose.project.working_dir": "/home/winfield/contain/nginx-proxy",
                "com.docker.compose.service": "nginx-proxy",
                "com.docker.compose.version": "2.2.3",
                "maintainer": "NGINX Docker Maintainers <[email protected]>",
                "org.opencontainers.image.authors": "Nicolas Duchon <[email protected]> (@buchdag), Jason Wilder",
                "org.opencontainers.image.created": "2022-02-28T00:02:10.384Z",
                "org.opencontainers.image.description": "Proxy nginx automat pentru containerele Docker care folosesc docker-gen",
                "org.opencontainers.image.licenses": "MIT",
                "org.opencontainers.image.revision": "fb8ddfd08c0f6cb53e583ea22ff8be06f69c50dc",
                "org.opencontainers.image.source": "https://github.com/nginx-proxy/nginx-proxy",
                "org.opencontainers.image.title": "nginx-proxy",
                „org.opencontainers.image.url”: „https://github.com/nginx-proxy/nginx-proxy”,
                „org.opencontainers.image.version”: „0.10.1-29-gfb8ddfd”
            },
            „StopSignal”: „SIGQUIT”
        },
        "Setari de retea": {
            „Pont”: „”,
            „SandboxID”: „cb385fa1d3dab87cccd2d89e70708e27e8bc1815867ae5fbc7e1c2f75000dc25”,
            „HairpinMode”: fals,
            „LinkLocalIPv6Address”: „”,
            „LinkLocalIPv6PrefixLen”: 0,
            „Porturi”: {
                „443/tcp”: [
                    {
                        „HostIp”: „0.0.0.0”,
                        „HostPort”: „443”
                    },
                    {
                        „HostIp”: „::”,
                        „HostPort”: „443”
                    }
                ],
                „80/tcp”: [
                    {
                        „HostIp”: „0.0.0.0”,
                        „HostPort”: „80”
                    },
                    {
                        „HostIp”: „::”,
                        „HostPort”: „80”
                    }
                ]
            },
            „SandboxKey”: „/var/run/docker/netns/cb385fa1d3da”,
            „SecundaryIPAddresses”: nul,
            „SecundaryIPv6Addresses”: nul,
            „EndpointID”: „”,
            „Gateway”: „”,
            „GlobalIPv6Address”: „”,
            „GlobalIPv6PrefixLen”: 0,
            "Adresa IP": "",
            „IPPrefixLen”: 0,
            „IPv6Gateway”: „”,
            "Adresa mac": "",
            „Rețele”: {
                „ivonet”: {
                    „IPAMConfig”: nul,
                    „Link-uri”: nul,
                    „Alias-uri”: [
                        „nginx-proxy”,
                        „nginx-proxy”,
                        „e24130ccef2b”
                    ],
                    „NetworkID”: „694e4c767b2eeca4c039e518db8294c2cc32a3be38f5dd0ad8779bce4099929c”,
                    „EndpointID”: „e653f85d0381f1c3bdaca9935eff3e4129d7941cf9c246d80e181e477c0bd79b”,
                    „Gateway”: „172.18.0.1”,
                    „IPAddress”: „172.18.0.3”,
                    „IPPrefixLen”: 24,
                    „IPv6Gateway”: „”,
                    „GlobalIPv6Address”: „”,
                    „GlobalIPv6PrefixLen”: 0,
                    „MacAddress”: „02:42:ac:12:00:03”,
                    „DriverOpts”: nul
                }
            }
        }
    }
]

Configurarea containerului nginx proxy:

[
    {
        „Id”: „e0b1be5c35ff60f337087f58819be190dcf495796114b6a2054dd78cf0e4679c”,
        „Creat”: „2022-03-02T16:16:23.658997558Z”,
        „Cale”: „/docker-entrypoint.sh”,
        „Args”: [
            "nginx",
            "-g",
            "daemon off;"
        ],
        "Stat": {
            „Stare”: „în rulare”,
            „Alergare”: adevărat,
            „Întrerupt”: fals,
            „Repornire”: fals,
            „OOMKilled”: fals,
            „Mort”: fals,
            „Pid”: 3633,
            „ExitCode”: 0,
            „Eroare”: „”,
            „StartedAt”: „2022-03-02T16:16:24.099412527Z”,
            „TerminatLa”: „0001-01-01T00:00:00Z”
        },
        „Imagine”: „sha256:bef258acf10dc257d641c47c3a600c92f87be4b4ce4a5e4752b3eade7533dcd9”,
        „ResolvConfPath”: „/var/lib/docker/containers/e0b1be5c35ff60f337087f58819be190dcf495796114b6a2054dd78cf0e4679c/resolv.conf”,
        „HostnamePath”: „/var/lib/docker/containers/e0b1be5c35ff60f337087f58819be190dcf495796114b6a2054dd78cf0e4679c/hostname”,
        „HostsPath”: „/var/lib/docker/containers/e0b1be5c35ff60f337087f58819be190dcf495796114b6a2054dd78cf0e4679c/hosts”,
        „LogPath”: „/var/lib/docker/containers/e0b1be5c35ff60f337087f58819be190dcf495796114b6a2054dd78cf0e4679c/e0b1be5c35ff60f337087f58819be190dcf495796114b6a2054dd78cf0e4679c/e0b1be5c35ff60f337087f3370cf871974609700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000;
        „Nume”: „/atsuo.tg”,
        „RestartCount”: 0,
        „Driver”: „btrfs”,
        "Platform": "linux",
        „MountLabel”: „”,
        „ProcessLabel”: „”,
        „AppArmorProfile”: „”,
        „ExecIDs”: nul,
        „HostConfig”: {
            „Leagă”: [
                „/home/winfield/contain/atsuo.tg/site:/usr/share/nginx/html:rw”
            ],
            „ContainerIDFile”: „”,
            „LogConfig”: {
                „Tip”: „fișier-json”,
                „Configurare”: {}
            },
            „NetworkMode”: „ivonet”,
            „PortBindings”: {
                „80/tcp”: [
                    {
                        „HostIp”: „”,
                        „HostPort”: „8001”
                    }
                ]
            },
            „RestartPolicy”: {
                "Nume": "",
                „Maximum RetryCount”: 0
            },
            „AutoRemove”: fals,
            „VolumeDriver”: „”,
            „VolumesFrom”: nul,
            „CapAdd”: nul,
            „CapDrop”: nul,
            „CgroupnsMode”: „privat”,
            „Dns”: nul,
            „DnsOptions”: nul,
            „DnsSearch”: nul,
            „ExtraHosts”: nul,
            „GroupAdd”: nul,
            „IpcMode”: „privat”,
            „Cgroup”: „”,
            „Legături”: nul,
            „OomScoreAdj”: 0,
            „PidMode”: „”,
            „Privilegiat”: fals,
            „PublishAllPorts”: fals,
            „ReadonlyRootfs”: fals,
            „SecurityOpt”: nul,
            „UTSMode”: „”,
            „UsernsMode”: „”,
            „ShmSize”: 67108864,
            „Runtime”: „runc”,
            „ConsoleSize”: [
                0,
                0
            ],
            "Izolare": "",
            „CpuShares”: 0,
            „Memorie”: 0,
            „NanoCpus”: 0,
            "CgroupParent": "",
            „BlkioWeight”: 0,
            „BlkioWeightDevice”: nul,
            „BlkioDeviceReadBps”: nul,
            „BlkioDeviceWriteBps”: nul,
            „BlkioDeviceReadIOps”: nul,
            „BlkioDeviceWriteIOps”: nul,
            „CpuPeriod”: 0,
            „CpuQuota”: 0,
            „CpuRealtimePeriod”: 0,
            „CpuRealtimeRuntime”: 0,
            "CpusetCpus": "",
            "CpusetMems": "",
            „Dispozitive”: nul,
            „DeviceCgroupRules”: null,
            „DeviceRequests”: nul,
            „KernelMemory”: 0,
            „KernelMemoryTCP”: 0,
            „Rezervare memorie”: 0,
            „Schimbare memorie”: 0,
            „MemorySwappiness”: nul,
            „OomKillDisable”: nul,
            „PidsLimit”: nul,
            „Ulimits”: nul,
            „CpuCount”: 0,
            „CpuPercent”: 0,
            „IOMaximumIOps”: 0,
            „IOMaximumBandwidth”: 0,
            „MaskedPaths”: [
                „/proc/sound”,
                „/proc/acpi”,
                „/proc/kcore”,
                „/proc/keys”,
                „/proc/latency_stats”,
                „/proc/timer_list”,
                „/proc/timer_stats”,
                „/proc/sched_debug”,
                "/proc/scsi",
                „/sys/firmware”
            ],
            „ReadonlyPaths”: [
                "/proc/bus",
                „/proc/fs”,
                „/proc/irq”,
                „/proc/sys”,
                „/proc/sysrq-trigger”
            ]
        },
        „GraphDriver”: {
            „Date”: nul,
            „Nume”: „btrfs”
        },
        „Monturi”: [
            {
                „Tip”: „lega”,
                „Sursa”: „/home/winfield/contain/atsuo.tg/site”,
                „Destinație”: „/usr/share/nginx/html”,
                „Mod”: „rw”,
                „RW”: adevărat,
                „Propagare”: „rprivat”
            }
        ],
        „Configurare”: {
            „Nume gazdă”: „atsuotg”,
            "Numele domeniului": "",
            "Utilizator": "",
            „AttachStdin”: fals,
            „AttachStdout”: adevărat,
            „AttachStderr”: adevărat,
            „ExposedPorts”: {
                „80/tcp”: {}
            },
            „Tty”: fals,
            „OpenStdin”: fals,
            „StdinOnce”: fals,
            „Env”: [
                „VIRTUAL_PORT=8001”,
                „LETSENCRYPT_HOST=atsuo.tg”,
                „VIRTUAL_HOST=atsuo.tg”,
                „PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin”,
                „NGINX_VERSION=1.21.6”,
                „NJS_VERSION=0.7.2”,
                „PKG_RELEASE=1”
            ],
            „Cmd”: [
                "nginx",
                "-g",
                "daemon off;"
            ],
            „Imagine”: „nginx:alpin”,
            „Volume”: {
                „/usr/share/nginx/html”: {}
            },
            „WorkingDir”: „”,
            "Punct de intrare": [
                „/docker-entrypoint.sh”
            ],
            „OnBuild”: nul,
            „Etichete”: {
                "com.docker.compose.config-hash": "1f56d3b21bfd2b60df186db7d9ee19865f777207a470f0f36fd37a27cd65acef",
                „com.docker.compose.container-number”: „1”,
                "com.docker.compose.depends_on": "",
                "com.docker.compose.oneoff": "Fals",
                "com.docker.compose.project": "atsuotg",
                "com.docker.compose.project.config_files": "/home/winfield/contain/atsuo.tg/docker-compose.yaml",
                "com.docker.compose.project.working_dir": "/home/winfield/contain/atsuo.tg",
                "com.docker.compose.service": "atsuo.tg",
                "com.docker.compose.version": "2.2.3",
                "maintainer": "NGINX Docker Maintainers <[email protected]>"
            },
            „StopSignal”: „SIGQUIT”
        },
        "Setari de retea": {
            „Pont”: „”,
            „SandboxID”: „9339a100e64c7de59e3c6b9f00761ce9bc90789b8139daed8781c14bc91258e8”,
            „HairpinMode”: fals,
            „LinkLocalIPv6Address”: „”,
            „LinkLocalIPv6PrefixLen”: 0,
            „Porturi”: {
                „80/tcp”: [
                    {
                        „HostIp”: „0.0.0.0”,
                        „HostPort”: „8001”
                    },
                    {
                        „HostIp”: „::”,
                        „HostPort”: „8001”
                    }
                ]
            },
            „SandboxKey”: „/var/run/docker/netns/9339a100e64c”,
            „SecundaryIPAddresses”: nul,
            „SecundaryIPv6Addresses”: nul,
            „EndpointID”: „”,
            „Gateway”: „”,
            „GlobalIPv6Address”: „”,
            „GlobalIPv6PrefixLen”: 0,
            "Adresa IP": "",
            „IPPrefixLen”: 0,
            „IPv6Gateway”: „”,
            "Adresa mac": "",
            „Rețele”: {
                „ivonet”: {
                    „IPAMConfig”: nul,
                    „Link-uri”: nul,
                    „Alias-uri”: [
                        "atsuo.tg",
                        "atsuo.tg",
                        „e0b1be5c35ff”,
                        "atsuotg"
                    ],
                    „NetworkID”: „694e4c767b2eeca4c039e518db8294c2cc32a3be38f5dd0ad8779bce4099929c”,
                    „EndpointID”: „6ccfdba4120787c39c71505403db08c67f32284637e5bbf2c4abbf0cdb8c15b7”,
                    „Gateway”: „172.18.0.1”,
                    „IPAddress”: „172.18.0.4”,
                    „IPPrefixLen”: 24,
                    „IPv6Gateway”: „”,
                    „GlobalIPv6Address”: „”,
                    „GlobalIPv6PrefixLen”: 0,
                    „MacAddress”: „02:42:ac:12:00:04”,
                    „DriverOpts”: nul
                }
            }
        }
    }
]

Configurarea rețelei de punte personalizată Docker:

[
    {
        „Nume”: „ivonet”,
        „Id”: „694e4c767b2eeca4c039e518db8294c2cc32a3be38f5dd0ad8779bce4099929c”,
        „Creat”: „2022-03-02T11:15:32.631561185-05:00”,
        „Scope”: „local”,
        „Driver”: „pod”,
        „EnableIPv6”: fals,
        „IPAM”: {
            „Driver”: „implicit”,
            "Opțiuni": {},
            „Configurare”: [
                {
                    „Subrețea”: „172.18.0.0/24”,
                    „Gateway”: „172.18.0.1”
                }
            ]
        },
        „Intern”: fals,
        „Atașabil”: fals,
        „Ingress”: fals,
        „ConfigFrom”: {
            „Rețea”: „”
        },
        „ConfigOnly”: fals,
        „Containere”: {
            "adac9051c7813cd9bab6747c798e058983c061b56fbcc9d5cee9d6dacd35461b": {
                „Nume”: „nginx-acme”,
                „EndpointID”: „15ae704194cf33bad77911800541de67f2ee099229014106af65b09d9bf58fa9”,
                „MacAddress”: „02:42:ac:12:00:02”,
                „Adresa IPv4”: „172.18.0.2/24”,
                „Adresa IPv6”: „”
            },
            „e0b1be5c35ff60f337087f58819be190dcf495796114b6a2054dd78cf0e4679c”: {
                „Nume”: „atsuo.tg”,
                „EndpointID”: „6ccfdba4120787c39c71505403db08c67f32284637e5bbf2c4abbf0cdb8c15b7”,
                „MacAddress”: „02:42:ac:12:00:04”,
                „Adresa IPv4”: „172.18.0.4/24”,
                „Adresa IPv6”: „”
            },
            „e24130ccef2bce43a11ebe5686e9a0ca45a7b0b13e32c4649095d11fd0361123”: {
                „Nume”: „nginx-proxy”,
                „EndpointID”: „e653f85d0381f1c3bdaca9935eff3e4129d7941cf9c246d80e181e477c0bd79b”,
                „MacAddress”: „02:42:ac:12:00:03”,
                „Adresa IPv4”: „172.18.0.3/24”,
                „Adresa IPv6”: „”
            }
        },
        "Opțiuni": {
            "com.docker.network.bridge.enable_icc": "adevărat"
        },
        „Etichete”: {}
    }
]

Ieșire din iptables-salvare pe gazdă:

# Generat de iptables-save v1.8.7 pe miercuri, 2 martie, 15:59:49 2022
*filtru
:INPUT ACCEPT [0:0]
: FORWARD DROP [0:0]
: ACCEPT IEȘIRE [0:0]
:DOCKER - [0:0]
:DOCKER-ISOLATION-STAGE-1 - [0:0]
:DOCKER-ISOLATION-STAGE-2 - [0:0]
:DOCKER-USER - [0:0]
-UN FORWARD -j DOCKER-UTILIZATOR
-A ÎNAINTE -j DOCKER-ETAPA DE IZOLARE-1
-A FORWARD -o br-694e4c767b2e -m conntrack --ctstate RELATED,STABLISHED -j ACCEPT
-A FORWARD -o br-694e4c767b2e -j DOCKER
-A ÎNTÂMPRE -i br-694e4c767b2e ! -o br-694e4c767b2e -j ACCEPT
-A FORWARD -i br-694e4c767b2e -o br-694e4c767b2e -j ACCEPT
-A FORWARD -o docker0 -m conntrack --ctstate RELATED,STABLISHED -j ACCEPT
-A FORWARD -o docker0 -j DOCKER
-A ÎNTÂMPRE -i docker0 ! -o docker0 -j ACCEPT
-A FORWARD -i docker0 -o docker0 -j ACCEPT
-A DOCKER -d 172.18.0.3/32 ! -i br-694e4c767b2e -o br-694e4c767b2e -p tcp -m tcp --dport 443 -j ACCEPT
-A DOCKER -d 172.18.0.3/32 ! -i br-694e4c767b2e -o br-694e4c767b2e -p tcp -m tcp --dport 80 -j ACCEPT
-A DOCKER -d 172.18.0.4/32 ! -i br-694e4c767b2e -o br-694e4c767b2e -p tcp -m tcp --dport 80 -j ACCEPT
-A DOCKER-ISOLATION-STAGE-1 -i br-694e4c767b2e ! -o br-694e4c767b2e -j DOCKER-ISOLATION-STAGE-2
-A DOCKER-ISOLATION-STAGE-1 -i docker0 ! -o docker0 -j DOCKER-ISOLATION-STAGE-2
-A DOCKER-IZOLARE-ETAPA-1 -j RETURNARE
-A DOCKER-ISOLATION-STAGE-2 -o br-694e4c767b2e -j DROP
-A DOCKER-ISOLATION-STAGE-2 -o docker0 -j DROP
-A DOCKER-IZOLARE-ETAPA-2 -j RETURNARE
-UN DOCKER-USER -j RETURN
COMMIT
# Finalizat miercuri 2 martie 15:59:49 2022
# Generat de iptables-save v1.8.7 pe miercuri, 2 martie, 15:59:49 2022
*nat
:ACCEPTAREA PRE-ROUTARE [0:0]
:INPUT ACCEPT [0:0]
: ACCEPT IEȘIRE [0:0]
: POSTROUTING ACCEPT [0:0]
:DOCKER - [0:0]
-A PREROUTING -m addrtype --dst-type LOCAL -j DOCKER
-O IEȘIRE! -d 127.0.0.0/8 -m addrtype --dst-type LOCAL -j DOCKER
-A POSTOUTING -s 172.18.0.0/24 ! -o br-694e4c767b2e -j MASQUERADE
-A POSTOUTING -s 172.17.0.0/16 ! -o docker0 -j MASQUERADE
-A POSTROUTING -s 172.18.0.3/32 -d 172.18.0.3/32 -p tcp -m tcp --dport 443 -j MASQUERADE
-A POSTROUTING -s 172.18.0.3/32 -d 172.18.0.3/32 -p tcp -m tcp --dport 80 -j MASQUERADE
-A POSTROUTING -s 172.18.0.4/32 -d 172.18.0.4/32 -p tcp -m tcp --dport 80 -j MASQUERADE
-A DOCKER -i br-694e4c767b2e -j RETURN
-A DOCKER -i docker0 -j RETURN
-UN DOCKER! -i br-694e4c767b2e -p tcp -m tcp --dport 443 -j DNAT --to-destination 172.18.0.3:443
-UN DOCKER! -i br-694e4c767b2e -p tcp -m tcp --dport 80 -j DNAT --to-destination 172.18.0.3:80
-UN DOCKER! -i br-694e4c767b2e -p tcp -m tcp --dport 8001 -j DNAT --la-destinație 172.18.0.4:80
COMMIT
# Finalizat miercuri 2 martie 15:59:49 2022

Ieșire din lsof -i -P -n | grep ASCULTĂ pe gazdă:

systemd-r 911 systemd-resolve 12u IPv4 22667 0t0 TCP *:5355 (ASCULTĂ)
systemd-r 911 systemd-resolve 14u IPv6 22670 0t0 TCP *:5355 (ASCULTATE)
systemd-r 911 systemd-resolve 18u IPv4 22673 0t0 TCP 127.0.0.53:53 (ASCULTATE)
systemd-r 911 systemd-resolve 20u IPv4 22675 0t0 TCP 127.0.0.54:53 (ASCULTATE)
sshd 914 root 3u IPv4 46226 0t0 TCP *:26506 (ASCULTARE)
sshd 914 root 4u IPv6 46228 0t0 TCP *:26506 (ASCULTATE)
mariadbd 964 mysql 19u IPv4 57354 0t0 TCP *:3306 (ASCULTATE)
mariadbd 964 mysql 21u IPv6 57355 0t0 TCP *:3306 (ASCULTATE)
docker-pr 2674 root 4u IPv4 53545 0t0 TCP *:443 (ASCULTATE)
docker-pr 2681 root 4u IPv6 62592 0t0 TCP *:443 (ASCULTATE)
docker-pr 2694 root 4u IPv4 51280 0t0 TCP *:80 (ASCULTARE)
docker-pr 2700 root 4u IPv6 53552 0t0 TCP *:80 (ASCULTARE)
docker-pr 3591 root 4u IPv4 50347 0t0 TCP *:8001 (ASCULTARE)
docker-pr 3597 root 4u IPv6 46444 0t0 TCP *:8001 (ASCULTARE)
vidarlo avatar
drapel ar
Postați configurația pentru docker și nginx. Altfel, oarbem.
etd avatar
drapel cn
etd
@vidarlo ok am adăugat ceea ce cred că ar putea ajuta. Configurația pentru serverul interior nginx este implicită, din imaginea nginx:alpine
drapel co
Din această întrebare îi lipsesc detaliile necesare pentru a răspunde dacă și când link-urile se defectează. Vă rugăm să vă asigurați că tot conținutul necesar pentru a răspunde la întrebare este inclus aici, iar linkurile sunt doar pentru detalii suplimentare.
etd avatar
drapel cn
etd
@BMitch ok, asta are sens. Am mutat totul în corpul postării
Puncte:0
drapel co

The VIRTUAL_PORT setarea pare incorectă. Folosesti VIRTUAL_PORT=8001 în timp ce containerul ascultă pe portul 80. Deci, în schimb, ar trebui să aveți VIRTUAL_PORT=80.

Conectivitatea între containere are loc într-o rețea comună creată de utilizator (de ex. ivonet), și pe porturile de containere. Portul publicat pe gazdă este pentru utilizatorii externi să acceseze containerul conectându-se la portul gazdă care este redirecționat către portul containerului.

etd avatar
drapel cn
etd
Oh, naiba, asta face. am multe de invatat :|

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.