├── 01_FLASK_DOCKER  # 여기서 docker-compose up -d
│   ├── Dockerfile
│   ├── main.py
│   └── .dockerignore
└── docker-compose.yml

파일 작성


.dockerignore 작성 예시

#Dockerfile은 COPY에서 제외
Dockerfile 
# 주석
*/flask*
flask?
*.txt
!flask.txt

docker-compose.yml

version: "3"

services:
	app:
		build:
			context: ./01_FLASK_DOCKER
			dockerfile: Dockerfile
		links:
			- "db:mysqldb" 
		ports:
			- "80:8080" # flask 서버 포트가 8080
		container_name: appcontainer
		depends_on: # 해당 컨테이너보다 먼저 생성되어야 할 컨테이너 목록
			- db

  db:
    image: mysql:5.7
    restart: always
    volumes:
      - ./mysqldata:/var/lib/mysql
    environment:
      - MYSQL_ROOT_PASSWORD=123456789
      - MYSQL_DATABASE=fundb
    ports:
      - "3306:3306"
		container_name: dbcontainer

Dockerfile

FROM continuumio/miniconda

# 현재 폴더의 main.py를 컨테이너의 /app에 카피하도록
COPY ./ /app

# 작업 폴더는 /app 으로
WORKDIR /app

RUN pip install flask pymysql cryptography
CMD ["python", "main.py"]

실행 및 기타 명령