Skip to content

Instantly share code, notes, and snippets.

@mperezguendulain
Last active April 30, 2020 22:06
Show Gist options
  • Save mperezguendulain/62271d8cae235bc5ca80d185e477606b to your computer and use it in GitHub Desktop.
Save mperezguendulain/62271d8cae235bc5ca80d185e477606b to your computer and use it in GitHub Desktop.
FROM mirror.gcr.io/library/ubuntu:18.04
ENV DEBIAN_FRONTEND='noninteractive'
# Update ubuntu
RUN apt-get update
RUN apt-get upgrade -y
RUN apt-get clean
# Install Chromium
RUN apt-get install chromium-browser -y
# Run chronium in headless mode
CMD [ "chromium-browser", "--no-sandbox", "--headless", "--disable-gpu", "--remote-debugging-address=0.0.0.0", "--remote-debugging-port=9222", "--disable-translate", "--disable-extensions", "--disable-background-networking", "--safebrowsing-disable-auto-update", "--disable-sync", "--disable-default-apps", "--hide-scrollbars", "--metrics-recording-only", "--mute-audio", "--no-first-run" ]
COPY echo_test /opt/echo_test
ENTRYPOINT ["/opt/echo_test"]
EXPOSE 1323
package main
import (
"fmt"
"io/ioutil"
"net/http"
"github.com/labstack/echo/v4"
)
type User struct {
Name string `json:"name"`
Email string `json:"email"`
}
func main() {
e := echo.New()
e.POST("/users", func(c echo.Context) error {
resp, err := http.Get("http://localhost:9222/")
if err != nil {
fmt.Println("Error: ", err)
return err
}
defer resp.Body.Close()
body, err := ioutil.ReadAll(resp.Body)
u := new(User)
if err := c.Bind(u); err != nil {
fmt.Println("Error: ", err)
return err
}
u.Email = string(body)
return c.JSON(http.StatusCreated, u)
})
e.Logger.Fatal(e.Start(":1323"))
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment