Pada tutorial docker kali ini, kita akan ‘mendockerkan’ aplikasi berbasis Flask. Flask sendiri adalah framework yang ditulis dalam bahasa Python.
Contoh aplikasi sederhana dalam Flask yang kita buat seperti ini:
from flask import Flask app = Flask(__name__) @app.route('/') def hello_world(): return 'Hello, World!' if __name__ == "__main__": app.run(debug=True, host="127.0.0.1")
silakan ganti 127.0.0.1 dengan 0.0.0.0, karena 127.0.0.1 hanya bisa diakses dari dalam container docker saja, sedangkan 0.0.0.0 adalah loopback yang bisa diakses dari luar container.
from flask import Flask app = Flask(__name__) @app.route('/') def hello_world(): return 'Hello, World!' if __name__ == "__main__": app.run(debug=True, host="0.0.0.0")
buat list requirment untuk Python installer pip dengan nama file ‘requirement.txt’:
flask
dan taruh semua modul python yang dibutuhkan disana.
kemudian di dalam folder sourcecode, silakan bikin file Dockerfile:
FROM ubuntu:18.04 LABEL maintainer "dev@emka.web.id" RUN apt-get update -y && \ apt-get install -y python3-pip python3-dev # We copy just the requirements.txt first to leverage Docker cache COPY ./requirements.txt /app/requirements.txt WORKDIR /app RUN pip3 install -r requirements.txt COPY . /app ENTRYPOINT [ “python3” ] CMD [ “main.py” ]
setelah itu build image docker-nya dengan perintah:
docker build -t python_flask .
dengan python_flask adalah nama image. tunggu sampai proses build image berhasil.
untuk ujicoba, silakan jalankan docker container dari basis image diatas:
docker run --name testing -p 5000:5000 -d python_flask:latest
dengan port 5000, nama kontainer ‘testing’ dan basis image ‘python_flask’ versi ‘latest’.
silakan dicoba akses ke alamat http://0.0.0.0:5000