File tree Expand file tree Collapse file tree 3 files changed +96
-0
lines changed
docs/docs/04_docker_intro/02_run_docker_container Expand file tree Collapse file tree 3 files changed +96
-0
lines changed Original file line number Diff line number Diff line change
1
+ FROM python:3.10
2
+ EXPOSE 5000
3
+ WORKDIR /app
4
+ RUN pip install flask
5
+ COPY . .
6
+ CMD ["flask" , "run" , "--host" , "0.0.0.0" ]
Original file line number Diff line number Diff line change
1
+ from flask import Flask , request
2
+
3
+ app = Flask (__name__ )
4
+
5
+ stores = [{"name" : "My Store" , "items" : [{"name" : "Chair" , "price" : 15.99 }]}]
6
+
7
+
8
+ @app .get ("/store" )
9
+ def get_stores ():
10
+ return {"stores" : stores }
11
+
12
+
13
+ @app .post ("/store" )
14
+ def create_store ():
15
+ request_data = request .get_json ()
16
+ new_store = {"name" : request_data ["name" ], "items" : []}
17
+ stores .append (new_store )
18
+ return new_store , 201
19
+
20
+
21
+ @app .post ("/store/<string:name>/item" )
22
+ def create_item (name ):
23
+ request_data = request .get_json ()
24
+ for store in stores :
25
+ if store ["name" ] == name :
26
+ new_item = {"name" : request_data ["name" ], "price" : request_data ["price" ]}
27
+ store ["items" ].append (new_item )
28
+ return new_item , 201
29
+ return {"message" : "Store not found" }, 404
30
+
31
+
32
+ @app .get ("/store/<string:name>" )
33
+ def get_store (name ):
34
+ for store in stores :
35
+ if store ["name" ] == name :
36
+ return store
37
+ return {"message" : "Store not found" }, 404
38
+
39
+
40
+ @app .get ("/store/<string:name>/item" )
41
+ def get_item_in_store (name ):
42
+ for store in stores :
43
+ if store ["name" ] == name :
44
+ return {"items" : store ["items" ]}
45
+ return {"message" : "Store not found" }, 404
Original file line number Diff line number Diff line change
1
+ from flask import Flask , request
2
+
3
+ app = Flask (__name__ )
4
+
5
+ stores = [{"name" : "My Store" , "items" : [{"name" : "Chair" , "price" : 15.99 }]}]
6
+
7
+
8
+ @app .get ("/store" )
9
+ def get_stores ():
10
+ return {"stores" : stores }
11
+
12
+
13
+ @app .post ("/store" )
14
+ def create_store ():
15
+ request_data = request .get_json ()
16
+ new_store = {"name" : request_data ["name" ], "items" : []}
17
+ stores .append (new_store )
18
+ return new_store , 201
19
+
20
+
21
+ @app .post ("/store/<string:name>/item" )
22
+ def create_item (name ):
23
+ request_data = request .get_json ()
24
+ for store in stores :
25
+ if store ["name" ] == name :
26
+ new_item = {"name" : request_data ["name" ], "price" : request_data ["price" ]}
27
+ store ["items" ].append (new_item )
28
+ return new_item , 201
29
+ return {"message" : "Store not found" }, 404
30
+
31
+
32
+ @app .get ("/store/<string:name>" )
33
+ def get_store (name ):
34
+ for store in stores :
35
+ if store ["name" ] == name :
36
+ return store
37
+ return {"message" : "Store not found" }, 404
38
+
39
+
40
+ @app .get ("/store/<string:name>/item" )
41
+ def get_item_in_store (name ):
42
+ for store in stores :
43
+ if store ["name" ] == name :
44
+ return {"items" : store ["items" ]}
45
+ return {"message" : "Store not found" }, 404
You can’t perform that action at this time.
0 commit comments