diff --git a/_service b/_service
index 2cd7d61..224288c 100644
--- a/_service
+++ b/_service
@@ -1,12 +1,16 @@
-
- https
- github.com
- /containous/traefik/releases/download/v1.7.7/traefik-v1.7.7.src.tar.gz
- traefik-v1.7.7.tar.gz
+
+ https://github.com/traefik/traefik.git
+ git
+ v2.4.8
+ @PARENT_TAG@
+ enable
+ v(.*)
+
+
- *.tar.gz
- xz
+ *.tar
+ gz
diff --git a/_servicedata b/_servicedata
new file mode 100644
index 0000000..60d8d40
--- /dev/null
+++ b/_servicedata
@@ -0,0 +1,4 @@
+
+
+ https://github.com/traefik/traefik.git
+ 32655b5b16a1142b8b460e2d8dd68fe00d86a6bf
\ No newline at end of file
diff --git a/traefik-2.4.8.tar.gz b/traefik-2.4.8.tar.gz
new file mode 100644
index 0000000..53b7e92
--- /dev/null
+++ b/traefik-2.4.8.tar.gz
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:56997e9fa356cac520646e0f004d5fc0f72bf773a4071aae79af9951e83a225f
+size 7481622
diff --git a/traefik-rpmlintrc b/traefik-rpmlintrc
deleted file mode 100644
index 3ecf06c..0000000
--- a/traefik-rpmlintrc
+++ /dev/null
@@ -1,2 +0,0 @@
-addFilter (".* W: position-independent-executable-suggested /usr/bin/traefik")
-addFilter (".* W: statically-linked-binary /usr/bin/traefik")
diff --git a/traefik-v1.7.7.tar.xz b/traefik-v1.7.7.tar.xz
deleted file mode 100644
index 828d013..0000000
--- a/traefik-v1.7.7.tar.xz
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:e57bedfbcd49e8c3ed4cda2d46ff134cfe3de38bed244fd5cdb200c0e05dd64a
-size 7194192
diff --git a/traefik.changes b/traefik.changes
index dc25335..6ba11db 100644
--- a/traefik.changes
+++ b/traefik.changes
@@ -1,3 +1,18 @@
+-------------------------------------------------------------------
+Thu Apr 29 10:07:36 UTC 2021 - alexandre.vicenzi@suse.com
+
+- Update to version 2.4.8:
+ * Prepare release v2.4.8
+ * Raise errors for non-ASCII domain names in a router's rules
+ * Adding an option to (de)activate Pilot integration into the Traefik dashboard
+ * Doc: improve basic auth middleware httpasswd example
+ * Add missing `traefik.` prefix across sample config
+ * Fix travis docker image pulling for docs
+ * updating docs to remove a no longer needed note
+ * Update to gateway-api v0.2.0
+ * server: updating go-proxyproto with security bugfix from upstream
+ * Update go-acme/lego to v4.3.1
+
-------------------------------------------------------------------
Thu Jan 10 14:50:22 UTC 2019 - pgeorgiadis@suse.com
diff --git a/traefik.service b/traefik.service
new file mode 100644
index 0000000..95228dd
--- /dev/null
+++ b/traefik.service
@@ -0,0 +1,19 @@
+[Unit]
+Description=Traefik
+Documentation=https://doc.traefik.io/traefik/
+After=network.target network-online.target
+Requires=network-online.target
+AssertFileIsExecutable=/usr/bin/traefik
+AssertPathExists=/etc/traefik/traefik.toml
+
+[Service]
+Type=notify
+ExecStart=/usr/bin/traefik --configFile=/etc/traefik/traefik.toml
+Restart=always
+WatchdogSec=1s
+PrivateTmp=true
+ProtectSystem=full
+AmbientCapabilities=CAP_NET_BIND_SERVICE
+
+[Install]
+WantedBy=multi-user.target
diff --git a/traefik.spec b/traefik.spec
index 32e81e9..2b6405d 100644
--- a/traefik.spec
+++ b/traefik.spec
@@ -1,7 +1,7 @@
#
# spec file for package traefik
#
-# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2021 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -15,58 +15,90 @@
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
-# Make sure that the binary is not getting stripped.
-%{go_nostrip}
+%define project github.com/traefik/traefik
+%define build_date %(date +"%Y%m%d")
Name: traefik
-Version: 1.7.7
+Version: 2.4.8
Release: 0
-Summary: The Cloud Native Edge Router
+Summary: The Cloud Native Application Proxy
License: MIT
Group: Productivity/Networking/Web/Proxy
URL: https://traefik.io/
-Source0: %{name}-v%{version}.tar.xz
+Source0: %{name}-%{version}.tar.gz
+Source1: vendor.tar.gz
+Source2: traefik.service
+Source3: traefik.toml
BuildRequires: go-bindata
-BuildRequires: fdupes
-BuildRequires: golang(API) >= 1.10
+BuildRequires: golang(API) >= 1.16
BuildRequires: golang-packaging
-Requires(pre): %fillup_prereq
+BuildRequires: systemd-rpm-macros
+Recommends: podman
+%{?systemd_requires}
+%{go_provides}
+# Make sure that the binary is not getting stripped.
+%{go_nostrip}
%description
-Traefik listens to your service registry/orchestrator API and instantly
-generates the routes so your microservices are connected to the outside
-world -- without further intervention from your part.
+Traefik (pronounced traffic) is a modern HTTP reverse proxy and load balancer
+that makes deploying microservices easy. Traefik integrates with your existing
+infrastructure components (Docker, Swarm mode, Kubernetes, Marathon, Consul,
+Etcd, Rancher, Amazon ECS) and configures itself automatically and dynamically.
-Traefik is a modern HTTP reverse proxy and load balancer that makes
-deploying microservices easy. Traefik integrates with your existing
-infrastructure components (Docker, Swarm mode, Kubernetes, Marathon,
-Consul, Etcd, Rancher, Amazon ECS, ...) and configures itself
-automatically and dynamically.
-
-Pointing Traefik at your orchestrator should be the only configuration
-step you need.
-
-Documentation: http://docs.traefik.io/
+Pointing Traefik at your orchestrator should be the only configuration step you need.
%prep
-%setup -q -c -n %{name}-v%{version}
+%setup -q
%build
-%{goprep} github.com/containous/traefik
+%{goprep} %{project}
-# workaround: there is no %{gogenerate} macro
-cd %{_builddir}/go/src/github.com/containous/traefik;go generate
+# tarball causes "inconsistent vendoring"
+tar -xf %{SOURCE1}
-%{gobuild} ./cmd/traefik
+CGO_ENABLED=0
+
+go generate
+
+go build \
+ -buildmode=pie \
+ -mod=vendor \
+ -ldflags "-s -w -X github.com/traefik/traefik/v2/pkg/version.Version=%{version} -X github.com/traefik/traefik/v2/pkg/version.Codename='' -X github.com/traefik/traefik/v2/pkg/version.BuildDate=%{build_date}" \
+ -o traefik ./cmd/traefik/
%install
-%{goinstall}
-%{gofilelist}
-%fdupes %{buildroot}/%{_prefix}
+install -d %{buildroot}/%{_sbindir}
+install -D -p -m 0755 %{name} %{buildroot}%{_bindir}/%{name}
-%files -f file.lst
+# service
+install -D -p -m 0644 %{SOURCE2} %{buildroot}%{_unitdir}/%{name}.service
+ln -sf %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{name}
-%{_bindir}/%{name}
+# configuration
+install -D -p -m 0644 %{SOURCE3} %{buildroot}%{_sysconfdir}/%{name}/%{name}.toml
+
+%pre
+%service_add_pre %{name}.service
+
+%post
+%service_add_post %{name}.service
+%{fillup_only -n %{name}}
+
+%preun
+%service_del_preun %{name}.service
+
+%postun
+%service_del_postun %{name}.service
+
+%files
%license LICENSE.md
+%doc README.md SECURITY.md CONTRIBUTING.md
+%{_bindir}/%{name}
+
+%{_unitdir}/%{name}.service
+%{_sbindir}/rc%{name}
+
+%dir %{_sysconfdir}/%{name}
+%config(noreplace) %{_sysconfdir}/%{name}/%{name}.toml
%changelog
diff --git a/traefik.toml b/traefik.toml
new file mode 100644
index 0000000..bc7dac4
--- /dev/null
+++ b/traefik.toml
@@ -0,0 +1,150 @@
+################################################################
+#
+# Configuration sample for Traefik v2.
+#
+################################################################
+
+################################################################
+# Global configuration
+################################################################
+[global]
+ checkNewVersion = true
+ sendAnonymousUsage = false
+
+################################################################
+# Entrypoints configuration
+################################################################
+
+# Entrypoints definition
+#
+# Optional
+# Default:
+[entryPoints]
+ [entryPoints.web]
+ address = ":80"
+
+ [entryPoints.websecure]
+ address = ":443"
+
+################################################################
+# Traefik logs configuration
+################################################################
+
+# Traefik logs
+# Enabled by default and log to stdout
+#
+# Optional
+#
+[log]
+
+ # Log level
+ #
+ # Optional
+ # Default: "ERROR"
+ #
+ level = "INFO"
+
+ # Sets the filepath for the traefik log. If not specified, stdout will be used.
+ # Intermediate directories are created if necessary.
+ #
+ # Optional
+ # Default: os.Stdout
+ #
+ # filePath = "log/traefik.log"
+
+ # Format is either "json" or "common".
+ #
+ # Optional
+ # Default: "common"
+ #
+ # format = "json"
+
+################################################################
+# Access logs configuration
+################################################################
+
+# Enable access logs
+# By default it will write to stdout and produce logs in the textual
+# Common Log Format (CLF), extended with additional fields.
+#
+# Optional
+#
+[accessLog]
+
+ # Sets the file path for the access log. If not specified, stdout will be used.
+ # Intermediate directories are created if necessary.
+ #
+ # Optional
+ # Default: os.Stdout
+ #
+ # filePath = "/path/to/log/log.txt"
+
+ # Format is either "json" or "common".
+ #
+ # Optional
+ # Default: "common"
+ #
+ # format = "json"
+
+################################################################
+# API and dashboard configuration
+################################################################
+
+# Enable API and dashboard
+[api]
+
+ # Enable the API in insecure mode
+ #
+ # Optional
+ # Default: false
+ #
+ # insecure = true
+
+ # Enabled Dashboard
+ #
+ # Optional
+ # Default: true
+ #
+ # dashboard = false
+
+################################################################
+# Ping configuration
+################################################################
+
+# Enable ping
+[ping]
+
+ # Name of the related entry point
+ #
+ # Optional
+ # Default: "traefik"
+ #
+ # entryPoint = "traefik"
+
+################################################################
+# Docker configuration backend
+################################################################
+
+# Enable Docker configuration backend
+[providers.docker]
+
+ # Docker server endpoint. Can be a tcp or a unix socket endpoint.
+ #
+ # Required
+ # Default: "unix:///var/run/docker.sock"
+ #
+ # endpoint = "tcp://10.10.10.10:2375"
+
+ # Default host rule.
+ #
+ # Optional
+ # Default: "Host(`{{ normalize .Name }}`)"
+ #
+ # defaultRule = "Host(`{{ normalize .Name }}.docker.localhost`)"
+
+ # Expose containers by default in traefik
+ #
+ # Optional
+ # Default: true
+ #
+ # exposedByDefault = false
diff --git a/vendor.tar.gz b/vendor.tar.gz
new file mode 100644
index 0000000..e08894b
--- /dev/null
+++ b/vendor.tar.gz
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:74eadde544912098484507de8c928f741220e5e4f2a2aea6bbfe1201b1125130
+size 11921724