Hallo semua, Pada kesempatan kali ini kami akan share kelanjutan tentang Dockerfile yang kedua, jika belum melihatnya bisa mampir kesini. Langsung saja, berikut adalah langkah-langkahnya :
1. Membuat folder proyek
```bash $ sudo mkdir -p /docker_train/latihan02 $ cd /docker_train/latihan02 ```
2. Membuat Dockerfile
```bash $ vim Dockerfile ``` ```html # menggunakan source image FROM python:2.7-slim # mengatur folder default app WORKDIR /app # menambahkan file yang ada di folder proyek ke dalam folder app image ADD . /app # Install package dari file konfigurasi tambahan RUN pip install --trusted-host pypi.python.org -r requirements.txt # Expose port untuk aplikasi EXPOSE 80 # Mendefinisikan variabel ENV NAME World # Menjalankan program ketika container dijalankan CMD ["python", "app.py"] ```
3. Buat file tambahan untuk aplikasi
```bash $ vim requirements.txt Flask Redis ``` ```bash $ vim app.py ``` ```python from flask import Flask from redis import Redis, RedisError import os import socket # Connect to Redis redis = Redis(host="redis", db=0, socket_connect_timeout=2, socket_timeout=2) app = Flask(__name__) @app.route("/") def hello(): try: visits = redis.incr("counter") except RedisError: visits = "cannot connect to Redis, counter disabled" html = "Hello {name}!
" \ "Hostname: {hostname}
" \ "Visits: {visits}" return html.format(name=os.getenv("NAME", "world"), hostname=socket.gethostname(), visits=visits) if __name__ == "__main__": app.run(host='0.0.0.0', port=80) ```
4. Bangun image dari Dockerfile
```bash $ sudo docker build -t friendlyhello . ```
5. Tampilkan image yang sudah dibuat
```bash $ sudo docker image ls ```
6. Menjalankan container dengan image yang sudah dibuat
```bash $ sudo docker run -d -p 4000:80 friendlyhello $ curl http://localhost:4000 ```
Yaps, sekian dulu tutorial kali ini, sampai jumpa di tutorial berikutnya!
0 comments:
Post a Comment