codescalersinternships / home

home repo for internships
1 stars 0 forks source link

Datetime Server - Template #144

Open xmonader opened 4 days ago

xmonader commented 4 days ago

Create a basic HTTP server that returns the current date and time. Implement this server using multiple web frameworks, add tests, and containerize the application using Docker and Docker Compose.

Requirements:

  1. Server Functionality:

    • Endpoint: GET /datetime
    • Response: Current date and time
  2. Implementations:

    • Implement the server using: a. Standard library (net/http)
      b. Gin
  3. Testing:

    • Use Go's testing package and a HTTP testing library (e.g., httptest)
  4. Docker:

    • Create a Dockerfile for each framework implementation
    • Ensure each Docker image is optimized for size (Multistage builds)
  5. Docker Compose:

    • Create a docker-compose.yml file that runs all framework versions
    • Configure each service to run on a different port
  6. Documentation:

    • Provide a README with setup and running instructions
  7. Makefile driven: You should use make and a Makefile to drive the steps of

    • Building the binaries
    • Formatting
    • Linting
    • Building the images
    • Launching the containers

Optional Enhancements:

Acceptance Criteria: