# 가상환경 생성
vagrant@docker:~$ sudo apt install python
vagrant@docker:~/build$ mkdir flask
vagrant@docker:~/build$ cd flask
vagrant@docker:~/build/flask$ sudo apt install python3-venv
vagrant@docker:~/build/flask$ python3 -m venv mysite
vagrant@docker:~/build/flask$ ls
mysite
# 가상환경 활성화
vagrant@docker:~/build/flask$ source mysite/bin/activate
# Flask 설치
# Flask는 웹 애플리케이션 개발을 위한 파이썬 프레임워크
(mysite) vagrant@docker:~/build/flask$ pip3 install flask
# pip freeze
# 현재 작업 환경(가상환경)에 설치되어있는 패키지의 리스트를 모두 출력
(mysite) vagrant@docker:~/build/flask$ pip3 freeze > requirements.txt
(mysite) vagrant@docker:~/build/flask$ cat requirements.txt
click==8.0.1
Flask==2.0.1
itsdangerous==2.0.1
Jinja2==3.0.1
MarkupSafe==2.0.1
Werkzeug==2.0.1
# Dockerfile 작성
(mysite) vagrant@docker:~/build/flask$ cat Dockerfile
FROM python:3
COPY . /app
RUN pip3 install -r /app/requirements.txt
CMD ["python3", "/app/index.py"]
# index.py 파일 작성
(mysite) vagrant@docker:~/build/flask$ cat index.py
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
return " LDH HELLO "
if __name__ == "__main__":
app.run(host="0.0.0.0", port=int("5000"), debug=False)
1.도커를 이용해 실행
# 도커 이미지 생성
vagrant@docker:~/build/flask$ docker build -t myflask:v1 .
# 도커 컨테이너 생성
vagrant@docker:~/build/flask$ docker run -d -p 5000:5000 myflask:v1
# 실행
vagrant@docker:~/build/flask$ curl localhost:5000
LDH HELLO
2. 그냥 실행
# 실행
(mysite) vagrant@docker:~/build/flask$ python3 index.py
# 다른 터미널에서 확인
vagrant@docker:~$ curl localhost:5000
LDH HELLO
'클라우드 > 도커(Docker)' 카테고리의 다른 글
도커 Docker Alpine (알파인) 이미지 (0) | 2021.07.05 |
---|---|
도커 Docker 멀티 컨테이너 관리 Compose (0) | 2021.07.05 |
도커 Docker 레이어 (Layer) , Port (포트) (0) | 2021.07.05 |
도커 Docker .dockerignore 파일 (0) | 2021.07.05 |
도커 Docker Dockerfile 지시어 (0) | 2021.07.02 |