envoy force SSL Beispiel envoy.yaml

static_resources: Zuhörer: - address: socket_address: address: 0.0.0.0 port_value: 80 filter_chains: - filter: - name: envoy.http_connection_manager config: codec_type: auto stat_prefix: ingress_http route_config: virtual_hosts: - name: backend domains: ["*"] routes: - match: { prefix: "/" } redirect: path_redirect: "/" https_redirect: true http_filters: - name: envoy.router config: {} - address: socket_address: address: 0.0.0.0 port_value: 443 filter_chains: - tls_context: ...

Weiterlesen

envoy.yaml Beispiel für http und https Rewriting

Dies ist ein frühes Beispiel für die Arbeit mit envoy. Ich finde die Dokumentation schwierig zu verstehen, daher werde ich versuchen, meinen Fortschritt durch unregelmäßige Blogbeiträge zu verfolgen. Die folgende envoy.yaml funktioniert bei mir für http und https Rewriting zu google: static_resources: listeners: - address: socket_address: address: 0.0.0.0 port_value:...

Weiterlesen

Exception: Unerwartetes Zitat bei 1:2 (CSV::MalformedCSVError) Crystal

Beim Versuch, eine Amazon Pay-Datei zu analysieren, bin ich über dieses spezielle Problem gestolpert: Exception: Unerwartetes Zitat bei 1:2 (CSV::MalformedCSVError) Der Grund: Amazon Pay kodiert seine Dateien in UTF-8 mit BOM. Das BOM ist eine optionale (in UTF-8-Dateien) Markierung. Sie können es mit dem Tool xxd sehen, z.B. xxd apolish_amazon_2018DecMonthlyTransaction.csv | less Die...

Weiterlesen

Crystal auf Docker installieren: So fügen Sie das Crystal-Repository in der Dockerdatei zu Docker hinzu

Dockerfile (Auszug) ENV APT_KEY_DONT_WARN_ON_DANGEROUS_USAGE=DontWarn RUN apt-get update && apt-get install -y \ software-properties-common \ build-essential \ libevent-dev \ libssl-dev \ libxml2-dev \ libyaml-dev \ libgmp-dev \ libreadline-dev \ apt-transport-https \ iputils-ping \ git \ aptitude \ nano \ openssh-server \ && apt-key adv -keyserver keys.gnupg.net -recv-keys 09617FD37CC06B54 \ && add-apt-repository 'deb https://dist.crystal-lang.org/apt crystal...

Weiterlesen

Crystal libevent-2.0.so.5: Gemeinsame Objektdatei kann nicht geöffnet werden

Heute habe ich mein Ubuntu auf 18.04 aktualisiert. Beim Kompilieren einer Datei mit Crystal bekomme ich folgenden Fehler: stderr: /root/.cache/crystal/usr-share-crystal-src-ecr-process.cr/macro_run: Fehler beim Laden von Shared Libraries: libevent-2.0.so.5: cannot open shared object file: No such file or directory Die betreffende Bibliothek, libevent-2.0.so.5, wurde durch libevent-2.1.so.6 ersetzt => /usr/lib/x86_64-linux-gnu/libevent-2.1.so.6 Crystal ist sich dessen natürlich bewusst...

Weiterlesen

Crystal und Alpine auf dem Raspberry Pi

Zusammenführung von zwei interessanten Technologien: Alpine Linux - eine kleine und sicherheitsorientierte Linux-Distribution Crystal - eine kompilierte Sprache mit einer schönen Syntax (ähnlich Ruby) auf dem Raspberry Pi (armhf / ARMv6, die auch den Pi Zero W unterstützen würde) ist derzeit nicht möglich, Stand 21.12.2018. Es gibt keine (zumindest keine...

Weiterlesen

Crystal: crystal language Doppelte Spur gefunden

max@morpheus:~/crystal/taxgod$ crystal run src/taxgod.cr Unbehandelte Ausnahme: Duplicate trail found 'vat-correction' (Radix::Tree::DuplicateError) from lib/radix/src/radix/tree.cr:0:11 in 'add' from lib/radix/src/radix/tree.cr:149:11 in 'add' from lib/radix/src/radix/tree.cr:149:11 in 'add' from lib/radix/src/radix/tree.cr:108:9 in 'add' from lib/kemal/src/kemal/route_handler.cr:49:7 in 'add_to_radix_tree' from lib/kemal/src/kemal/route_handler.cr:21:7 in 'add_route' from lib/kemal/src/kemal/dsl.cr:12:1 in 'post' from src/vatcorrection.cr:26:2 in '__crystal_main' from /usr/share/crystal/src/crystal/main.cr:97:5 in 'main_user_code' from /usr/share/crystal/src/crystal/main.cr:86:7 in 'main' from /usr/share/crystal/src/crystal/main.cr:106:3 in 'main'...

Weiterlesen

Die Programmiersprache Crystal und Kodierungen

Kürzlich hatte ich Probleme mit der korrekten Einstellung von Dateikodierungen in der Programmiersprache Crystal, weshalb ich dies hier dokumentiere. Crystal liest und schreibt Dateien standardmäßig in UTF-8. Manchmal stößt man auf Dateien, die z.B. in der Windows-1252-Codepage kodiert sind. (Dies ist die westeuropäische Codeseite, die z.B. für Deutsch verwendet wird...

Weiterlesen