#!/bin/bash set -euxo pipefail nexus_domain="$(hostname --fqdn)" registry_domain="$nexus_domain" registry_username='alice.doe' registry_password='password' oci_hosted_repository_name='oci-hosted' oci_hosted_repository_host="$registry_domain/$oci_hosted_repository_name" oci_hosted_repository_api_url="https://$registry_domain/v2/$oci_hosted_repository_name" # login into the registry. echo "logging in the registry $registry_domain..." docker login "$registry_domain" --username "$registry_username" --password-stdin <.+) go_version='1.27.1' cat >main.go <<'EOF' package main import ( "fmt" "flag" "log" "net/http" ) func main() { log.SetFlags(0) var listenAddress = flag.String("listen", ":8000", "Listen address.") flag.Parse() if flag.NArg() != 0 { flag.Usage() log.Fatalf("\nERROR You MUST NOT pass any positional arguments") } http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { w.Header().Set("Content-Type", "text/plain") fmt.Printf("%s %s%s\n", r.Method, r.Host, r.URL) fmt.Fprintf(w, "%s %s%s\n", r.Method, r.Host, r.URL) }) fmt.Printf("Listening at http://%s\n", *listenAddress) err := http.ListenAndServe(*listenAddress, nil) if err != nil { log.Fatalf("Failed to ListenAndServe: %v", err) } } EOF cat >go.mod <Dockerfile <