1
0
mirror of https://github.com/thib8956/nginx-proxy synced 2025-08-23 16:01:57 +00:00
Commit Graph

1205 Commits

Author SHA1 Message Date
Nicolas Duchon
882e9a3b3c test: add tests for host mode fix 2023-04-28 22:43:20 +02:00
Nicolas Duchon
6ef3196d30 Merge pull request #2225 from nginx-proxy/dependabot/pip/test/requirements/requests-2.29.0
ci: bump requests from 2.28.2 to 2.29.0 in /test/requirements
2023-04-27 18:41:07 +02:00
dependabot[bot]
00a1e5ef5c ci: bump requests from 2.28.2 to 2.29.0 in /test/requirements
Bumps [requests](https://github.com/psf/requests) from 2.28.2 to 2.29.0.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.28.2...v2.29.0)

---
updated-dependencies:
- dependency-name: requests
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-27 05:00:28 +00:00
Andy
325fd01ebb Support containers running --net=host (#1537)
Detect if a target container is running host networking, and if so, use the IP address of the first bridge net gateway.
2023-04-23 14:09:33 +01:00
Nicolas Duchon
b4efff04b7 Merge pull request #2220 from nginx-proxy/docker-gen-0.10.4
build: dockergen 0.10.3 -> 0.10.4
2023-04-18 08:10:11 +02:00
Nicolas Duchon
9f735aab82 build: dockergen 0.10.3 -> 0.10.4 2023-04-18 07:58:38 +02:00
Nicolas Duchon
ff676b519e Merge pull request #2219 from nginx-proxy/dependabot/pip/test/requirements/pytest-7.3.1
ci: bump pytest from 7.3.0 to 7.3.1 in /test/requirements
2023-04-18 07:20:04 +02:00
Richard Hansen
89c3c89f60 Merge pull request #2214 from rhansen/default_server
fix: Remove `default_server` listen option from fallback server
2023-04-17 13:34:14 -04:00
dependabot[bot]
b34c917977 ci: bump pytest from 7.3.0 to 7.3.1 in /test/requirements
Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.3.0 to 7.3.1.
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/7.3.0...7.3.1)

---
updated-dependencies:
- dependency-name: pytest
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-17 05:01:01 +00:00
Richard Hansen
035bd2b5ac fix: Remove default_server listen option from fallback server
This fixes a bug introduced in commit
9b4bb07b34.
2023-04-13 01:16:54 -04:00
Nicolas Duchon
1f3508e6df Merge pull request #2216 from nginx-proxy/dependabot/pip/test/requirements/pytest-7.3.0
ci: bump pytest from 7.2.2 to 7.3.0 in /test/requirements
2023-04-10 07:35:41 +02:00
dependabot[bot]
695ad54dcf ci: bump pytest from 7.2.2 to 7.3.0 in /test/requirements
Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.2.2 to 7.3.0.
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/7.2.2...7.3.0)

---
updated-dependencies:
- dependency-name: pytest
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-10 05:00:55 +00:00
Nicolas Duchon
7322a2d542 Merge pull request #2213 from nginx-proxy/dependabot/docker/golang-1.20.3-alpine
build: bump golang from 1.20.2-alpine to 1.20.3-alpine
2023-04-05 07:19:43 +02:00
dependabot[bot]
a3d3baf259 build: bump golang from 1.20.2-alpine to 1.20.3-alpine
Bumps golang from 1.20.2-alpine to 1.20.3-alpine.

---
updated-dependencies:
- dependency-name: golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-04-05 04:58:03 +00:00
Nicolas Duchon
130fd908fb docs: update nginx version badge 2023-03-30 20:58:56 +02:00
Nicolas Duchon
3039d85ee7 Merge pull request #2206 from nginx-proxy/dependabot/docker/nginx-1.23.4-alpine
build: bump nginx from 1.23.3-alpine to 1.23.4-alpine
2023-03-30 20:58:00 +02:00
Nicolas Duchon
c35368007e Merge pull request #2207 from nginx-proxy/docker-gen-0.10.3
build: docker-gen 0.10.2 -> 0.10.3
2023-03-30 01:25:27 +02:00
Nicolas Duchon
2056dc4429 build: dockergen 0.10.2 -> 0.10.3 2023-03-30 01:10:05 +02:00
dependabot[bot]
87ffa7a5a8 build: bump nginx from 1.23.3-alpine to 1.23.4-alpine
Bumps nginx from 1.23.3-alpine to 1.23.4-alpine.

---
updated-dependencies:
- dependency-name: nginx
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-29 04:58:26 +00:00
Nicolas Duchon
0d9cd2b45c Merge pull request #2186 from rhansen/fallback
fix: Improve handling of unknown hosts and missing certs
2023-03-24 14:18:52 +01:00
Niek
7ca1da8358 feat: Add support for HTTP load balancing between the proxy and upstream server groups (#2173)
Add initial tests

Newlines

Remove unused variable

Co-authored-by: Richard Hansen <rhansen@rhansen.org>

Change comment value

Co-authored-by: Richard Hansen <rhansen@rhansen.org>

add missing services line

Co-authored-by: Richard Hansen <rhansen@rhansen.org>

Use deploy.replicas

Remove details about choosing a load balancing method

Feedback note

Co-authored-by: Nicolas Duchon <nicolas.duchon@gmail.com>
2023-03-21 07:49:27 +01:00
Nicolas Duchon
55d53e6659 Merge pull request #1934 from rhansen/keepalive
feat: Add support for HTTP keep-alive between the proxy and upstream
2023-03-21 07:31:13 +01:00
Nicolas Duchon
6c2d17586b Merge pull request #2200 from nginx-proxy/docker-gen-0.10.2
build: dockergen 0.10.1 -> 0.10.2
2023-03-21 07:27:48 +01:00
Nicolas Duchon
4696944245 build: dockergen 0.10.1 -> 0.10.2 2023-03-21 07:15:34 +01:00
Richard Hansen
49bb37dfdb feat: Add support for HTTP keep-alive between the proxy and upstream 2023-03-14 04:20:17 -04:00
Nicolas Duchon
1f855fc7b3 Merge pull request #2191 from rhansen/nil-currentcontainer
fix: Don't error if `$globals.CurrentContainer` is `nil`
2023-03-14 06:49:21 +01:00
Richard Hansen
364beed773 fix: Don't error if $globals.CurrentContainer is nil
Also:
  * Note when there are no networks.
  * Fix "networks available" comment.
2023-03-10 15:23:44 -05:00
Richard Hansen
51fd6918ca Merge pull request #2188 from nginx-proxy/dependabot/docker/golang-1.20.2-alpine
build: bump golang from 1.20.1-alpine to 1.20.2-alpine
2023-03-08 15:00:19 -05:00
dependabot[bot]
9906ccda42 build: bump golang from 1.20.1-alpine to 1.20.2-alpine
Bumps golang from 1.20.1-alpine to 1.20.2-alpine.

---
updated-dependencies:
- dependency-name: golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-08 04:58:06 +00:00
Richard Hansen
d990354e3d Merge pull request #2187 from nginx-proxy/dependabot/pip/test/requirements/pytest-7.2.2
ci: bump pytest from 7.2.1 to 7.2.2 in /test/requirements
2023-03-06 15:50:46 -05:00
dependabot[bot]
2fc3e6c28c ci: bump pytest from 7.2.1 to 7.2.2 in /test/requirements
Bumps [pytest](https://github.com/pytest-dev/pytest) from 7.2.1 to 7.2.2.
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/7.2.1...7.2.2)

---
updated-dependencies:
- dependency-name: pytest
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-03-06 05:04:42 +00:00
Nicolas Duchon
abcef6be86 Merge pull request #2184 from nginx-proxy/dockergen-0.10.1
build: dockergen 0.10.0 -> 0.10.1
2023-02-28 08:50:19 +01:00
Nicolas Duchon
6e9d46e672 Merge pull request #2164 from rhansen/tests
chore: minor test improvements
2023-02-28 08:49:12 +01:00
Nicolas Duchon
16b8cde8e4 build: dockergen 0.10.0 -> 0.10.1 2023-02-28 08:36:27 +01:00
Nicolas Duchon
afd6544702 Merge pull request #2179 from rhansen/swarm
fix: Partially revert "chore: Remove support for legacy swarm"
2023-02-28 07:40:16 +01:00
Richard Hansen
4fc17d6139 Merge pull request #2183 from JanMalte/patch-1
fix: Sort networks and ports before iterating
2023-02-21 00:56:06 -05:00
Jan Malte Gerth
37134c44d7 fix: Sort networks and ports before iterating
This avoids unnecessary nginx restarts caused by config file churn.
2023-02-21 00:22:47 -05:00
Richard Hansen
b5a54ac219 tests: Reduce scope of docker_compose fixture (and friends)
This makes it possible to bring up different compose files for
different tests in the same test module.

This change does not negatively affect performance because the fixture
is a no-op if the docker compose filename is unchanged between tests.
2023-02-17 02:34:08 -05:00
Richard Hansen
4d8f878ba7 tests: Fixture that simplifies Docker compose file changes 2023-02-17 02:34:08 -05:00
Richard Hansen
f5a3492926 tests: Factor out DNS monkey patching to its own fixture 2023-02-17 02:34:08 -05:00
Richard Hansen
09a2f40633 tests: Turn helper function into docker_compose_file fixture
This makes it easier for tests to override the filename.
2023-02-17 02:34:08 -05:00
Richard Hansen
01745a836f tests: Fix path to ca-root.crt
`os.getcwd()` is not guaranteed to always return the `test/`
directory.
2023-02-17 02:34:08 -05:00
Richard Hansen
6207be5f8f fix: Partially revert "chore: Remove support for legacy swarm"
This partially reverts commit 2494e20784
by ignoring any network named "ingress" when searching for a
container's IP address.

That commit was technically a backwards-incompatible change: Some
users use nginx-proxy with Swarm mode even though it is not fully
supported.  In such cases nginx-proxy should ignore the `ingress`
network, otherwise nginx will not be able to reach the
server (container-to-container traffic apparently doesn't work over
the Swarm `ingress` network).

The parts of that commit that examine the `SwarmNode` structure are
not reverted here because docker-gen does not currently populate that
structure -- not even when both docker-gen and the service task
container are running on the same manager node.
2023-02-17 01:52:05 -05:00
Richard Hansen
6f2a549ef1 Merge pull request #2175 from nginx-proxy/dependabot/docker/golang-1.20.1
build: bump golang from 1.20.0 to 1.20.1
2023-02-15 03:47:19 -05:00
dependabot[bot]
de4386e440 build: bump golang from 1.20.0 to 1.20.1
Bumps golang from 1.20.0 to 1.20.1.

---
updated-dependencies:
- dependency-name: golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-02-15 04:57:57 +00:00
Nicolas Duchon
bc2ada1f44 Merge pull request #2163 from nginx-proxy/dockergen-0.10.0
build: dockergen 0.9.4 -> 0.10.0
2023-02-09 08:28:09 +01:00
Nicolas Duchon
c10c7bcbe9 build: dockergen 0.9.4 -> 0.10.0 2023-02-09 08:10:43 +01:00
Nicolas Duchon
41e025f0f0 Merge pull request #2159 from rhansen/refactor
chore: Factor out container IP:port lookup
2023-02-09 08:01:26 +01:00
Richard Hansen
9b4bb07b34 fix: Don't create fallback http(s) server when http(s) disabled
Before, a fallback http server was created to handle requests for
unknown virtual hosts even when `HTTPS_METHOD=nohttp`.  (In this case,
all http vhosts would be unknown.)  Likewise, a catch-all fallback
https server was still created even if `HTTPS_METHOD=nohttps`.

Now the fallback servers are created only if needed.  This brings the
behavior in line with the documentation and user expectation.  It will
also make it easier to implement a planned feature: different servers
on different ports.
2023-02-04 18:59:38 -05:00
Richard Hansen
9297e94389 fix: Emit TLS error if there are no certs available
Before, if neither the vhost-specific cert nor `default.crt` existed,
nginx-proxy would not create the https vhost.  This resulted in nginx
either refusing the connection or serving the wrong vhost depending on
whether there was another https vhost with a certificate.

Now nginx-proxy always creates an https server for a vhost, even if
the vhost-specific certificate and the default certificate are both
missing.  When both certs are missing, nginx is given empty
certificate data to make it possible for it to start up without an
error.  The empty certificate data causes the user to see a TLS error,
which is much easier to troubleshoot than a connection refused error
or serving the wrong vhost.
2023-02-02 22:02:06 -05:00