Docker training Flask microservice.
8.0K
This is an example microservice written in Flask, intended to be used as part of 2hog's Docker trainings.
It implements a single endpoint (GET /), which:
greeting URL parameterparis@docker-training-samples-micro-flask:/mnt/project$ curl -u antonis:kalipetis http://localhost:5000/?greeting=Konichiwa
<h1>Konichiwa, trainee!</h1>
<p>This is a simple Flask microservice that we wrote for you.</p>
The Flask Sample Microservice accepts configuration via environment variables:
AUTH_USER: The username to use for Basic Authentication (default: antonis)AUTH_PASSWORD: The password to use for Basic Authentication (default: kalipetis)DEBUG: Enable debugging mode and print environment information (default: 0 in production, 1 in development)ENVIRONMENT: Environment in which the application runs (default: production in production, development in development)The Flask Sample Microservice also accepts and prefers configuration for AUTH_USER and AUTH_PASSWORD as secret files:
/run/secrets/auth_user: The username to use for Basic Authentication/run/secrets/auth_password: The password to use for Basic Authenticationdocker run -d \
-e AUTH_USER=antonis -e AUTH_PASSWORD=kalipetis \
-e DEBUG=true -e ENVIRONMENT=staging \
-p 5000 \
2hog/docker-training-samples-micro-flask
docker secret create micro-flask-auth-user -
docker secret create micro-flask-auth-password -
docker stack deploy -c docker-compose.yml docker-training-samples-micro-flask
kubectl create secret generic docker-training-samples-micro-flask-secret \
--from-literal=auth_user=antonis \
--from-literal=auth_password=kalipetis
kubectl apply -f kube/
To develop the Flask Sample Microservice, follow these steps:
git clone https://github.com/2hog/docker-training-samples-micro-flask
docker-compose up
This software is MIT licensed.
Content type
Image
Digest
Size
352.7 MB
Last updated
over 5 years ago
docker pull 2hog/docker-training-samples-micro-flask