flask+dockerfile制作鏡像


第一步:先寫好flask最小化代碼,保證可以訪問的到

[root@VM-0-15-centos Dockerfile]# cat flaskapp.py 
from flask import Flask
import os 
app = Flask(__name__)

@app.route('/')
def index():
    res = os.environ.get('name')
    return "hello,{}".format(res)

app.run(host='0.0.0.0',port=5000)

第二步:編寫dockerfile代碼

[root@VM-0-15-centos Dockerfile]# vim Dockerfile 
FROM python:3.6
MAINTAINER <fengzi@163.com>
ADD flaskapp.py /root
RUN pip install jinja2 -i https://mirrors.aliyun.com/pypi/simple
RUN pip install flask -i https://mirrors.aliyun.com/pypi/simple
ENV name=fengzi
EXPOSE 5000
CMD ["python","/root/flaskapp.py"]

第三步:這時候你可以用docker run啟動,我這里用k8s啟動,所以還需要寫yaml文件,這里我往環境變量里傳入了name=fengzi變量,因此在訪問web的時候就會是hello,fengzi,按照這個思路你可以傳入你想傳入的變量

[root@VM-0-15-centos ~]# cat flaskapp1.yaml 
apiVersion: v1
kind: Service
metadata:
  name: flaskapp1
  labels:
    app: flaskapp1
spec:
  selector:
    app: flaskapp1
  ports:
  - name: http
    port: 5000
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: flaskapp1
spec:
  replicas: 1
  selector:
    matchLabels:
      app: flaskapp1
  template:
    metadata: 
      labels:
        app: flaskapp1
        version: v1
    spec:
      containers:
      - name: flaskapp-container
        image: mysite
        imagePullPolicy: IfNotPresent
        env:
        - name: name
          value: fengzi

第四步:創建pod

[root@VM-0-15-centos ~]# kubectl apply -f flaskapp1.yaml 
service/flaskapp1 configured
deployment.apps/flaskapp1 configured

 

 第五步:驗證

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM