Envoyproxy getting started

Can view the envoryproxy default config in docker container

 1# Launch the envoryproxy container
 2# The 9901 port is envoryproxy admin and metrics, the 10000 port is listner 
 3# Then you can open http://127.0.0.1:9901 and http://127.0.0.1:10000 to view details
 4docker run -it --rm -p 9901:9901 -p 10000:10000 --name envoy envoyproxy/envoy:v1.27-latest
 5# Can attach and exec to container to view default config
 6docker exec -it envoy cat /etc/envoy/envoy.yaml
 7
 8# admin:
 9#   address:
10#     socket_address:
11#       protocol: TCP
12#       address: 0.0.0.0
13#       port_value: 9901
14# static_resources:
15#   listeners:
16#   - name: listener_0
17#     address:
18#       socket_address:
19#         protocol: TCP
20#         address: 0.0.0.0
21#         port_value: 10000
22#     filter_chains:
23#     - filters:
24#       - name: envoy.filters.network.http_connection_manager
25#         typed_config:
26#           "@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
27#           scheme_header_transformation:
28#             scheme_to_overwrite: https
29#           stat_prefix: ingress_http
30#           route_config:
31#             name: local_route
32#             virtual_hosts:
33#             - name: local_service
34#               domains: ["*"]
35#               routes:
36#               - match:
37#                   prefix: "/"
38#                 route:
39#                   host_rewrite_literal: www.envoyproxy.io
40#                   cluster: service_envoyproxy_io
41#           http_filters:
42#           - name: envoy.filters.http.router
43#             typed_config:
44#               "@type": type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
45#   clusters:
46#   - name: service_envoyproxy_io
47#     connect_timeout: 30s
48#     type: LOGICAL_DNS
49#     # Comment out the following line to test on v6 networks
50#     dns_lookup_family: V4_ONLY
51#     lb_policy: ROUND_ROBIN
52#     load_assignment:
53#       cluster_name: service_envoyproxy_io
54#       endpoints:
55#       - lb_endpoints:
56#         - endpoint:
57#             address:
58#               socket_address:
59#                 address: www.envoyproxy.io
60#                 port_value: 443
61#     transport_socket:
62#       name: envoy.transport_sockets.tls
63#       typed_config:
64#         "@type": type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.UpstreamTlsContext
65#         sni: www.envoyproxy.io

Static yaml config for Envoyproxy

 1static_resources:
 2
 3  listeners:
 4  - name: listener_0
 5    address:
 6      socket_address:
 7        address: 0.0.0.0
 8        port_value: 10000
 9    filter_chains:
10    - filters:
11      - name: envoy.filters.network.http_connection_manager
12        typed_config:
13          "@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
14          stat_prefix: ingress_http
15          access_log:
16          - name: envoy.access_loggers.stdout
17            typed_config:
18              "@type": type.googleapis.com/envoy.extensions.access_loggers.stream.v3.StdoutAccessLog
19            filter:
20              and_filter:
21                filters:
22                - header_filter:
23                    header:
24                      name: :Path
25                      string_match:
26                        exact: /status
27                      invert_match: true
28                - header_filter:
29                    header:
30                      name: :Path
31                      string_match:
32                        exact: /liveness
33                      invert_match: true
34                - header_filter:
35                    header:
36                      name: :Path
37                      string_match:
38                        exact: /readiness
39                      invert_match: true
40          http_filters:
41          - name: envoy.filters.http.router
42            typed_config:
43              "@type": type.googleapis.com/envoy.extensions.filters.http.router.v3.Router
44          route_config:
45            name: local_route
46            virtual_hosts:
47            - name: local_service
48              domains: ["*"]
49              routes:
50              - match:
51                  prefix: "/"
52                route:
53                  host_rewrite_literal: www.envoyproxy.io
54                  cluster: service_envoyproxy_io
55
56  clusters:
57  - name: service_envoyproxy_io
58    type: LOGICAL_DNS
59    # Comment out the following line to test on v6 networks
60    dns_lookup_family: V4_ONLY
61    load_assignment:
62      cluster_name: service_envoyproxy_io
63      endpoints:
64      - lb_endpoints:
65        - endpoint:
66            address:
67              socket_address:
68                address: www.envoyproxy.io
69                port_value: 443
70    transport_socket:
71      name: envoy.transport_sockets.tls
72      typed_config:
73        "@type": type.googleapis.com/envoy.extensions.transport_sockets.tls.v3.UpstreamTlsContext
74        sni: www.envoyproxy.io

Envoy wasm plugin knowledge