【Docker】python(Flask)+GraphQL(graphene)+MySQL(sqlalchemy)의 환경을 구축한다

소개



파이썬 웹 프레임 워크의 Flask를 사용하여 GraphQL 환경을 docker를 사용하여 구축합니다.

여기서, docker, docker-compose에 대하여 설명한다. graphene 설정은 Python (Flask) with GraphQL Server implementing SQLAlchemy, graphene, and SQLite

필요한 파일, 디렉토리


.
├── docker-compose.yml
├── Dockerfile
├── requirements.txt
├── books/ ← 上記のサイトを参照


파일 내용



requirements.txt



requirements.txt
Flask==1.1.2
Flask-GraphQL==2.0.1
graphene==2.1.8
graphene-sqlalchemy==2.3.0.dev1
SQLAlchemy==1.3.17
pymysql

Dockerfile



Dockerfile
FROM python:3.7-slim

WORKDIR /mnt

COPY requirements.txt ./

RUN pip install --no-cache-dir -r requirements.txt



docker-compose.yml



docker-compose.yml
version: '2'
services:
  graphql: 
    build: .
    volumes: 
    - './:/mnt'
    ports:
        - "5000:5000"
    tty: true
  db:
    image: mysql:5.7
    command: --default-authentication-plugin=mysql_native_password
    restart: always
    environment:
      MYSQL_DATABASE: test
      MYSQL_ROOT_PASSWORD: test
      MYSQL_USER: test
      MYSQL_PASSWORD: test
    ports:
        - "3306:3306"


다른 파일은 Python (Flask) with GraphQL Server implementing SQLAlchemy, graphene, and SQLite

실행



다음 명령 실행
$ docker-compose up -d

http://localhost:5000/graphql 방문

아래 화면이 표시되면 성공!

좋은 웹페이지 즐겨찾기