มันคือเครื่องมือในการสร้าง API นั่นเอง ใช่แล้วครับ มันคือการที่เราสามารถสร้าง API ขึ้นมาโดยไม่ต้องเขียนโค๊ดซักบรรทัด ย้ำ! ซักบรรทัด ผ่านการจัดการในหน้าของ Dashboard ที่สวยงามนั่นเองครับ

มาสร้าง Strapi บน Docker กัน

  • สร้าง file docker-compose.yml

แบบใช้ Database Mysql

version: '3'

services:
  strapi:
    container_name: strapi
    image: strapi/strapi
    restart: unless-stopped
    environment:
      DATABASE_CLIENT: mysql
      DATABASE_HOST: mysql
      DATABASE_PORT: 3306
      DATABASE_NAME: strapi
      DATABASE_USERNAME: strapi
      DATABASE_PASSWORD: strapi
      DATABASE_SSL: 'false'
    ports:
      - 1337:1337
    volumes:
      - ./app:/srv/app
    depends_on:
      - mysql
    networks:
      - custom_network

  mysql:
    container_name: mysql
    image: mysql
    command: mysqld --default-authentication-plugin=mysql_native_password
    restart: always
    volumes:
      - ./data:/var/lib/mysql
    environment:
      MYSQL_ROOT_PASSWORD: strapi
      MYSQL_DATABASE: strapi
      MYSQL_USER: strapi
      MYSQL_PASSWORD: strapi
    networks:
      - custom_network


networks:
  custom_network:
    external:
      name: nginx-network

แบบใช้ Database Mongodb



version: '3'

services:
  strapi:
    container_name: strapi
    image: strapi/strapi
    restart: unless-stopped
    environment:
      - DATABASE_CLIENT=mongo
      - DATABASE_HOST=db
      - DATABASE_PORT=27017
      - DATABASE_NAME=strapi
      - DATABASE_USERNAME=
      - DATABASE_PASSWORD=
      - AUTHENTICATION_DATABASE=strapi
    ports:
      - 1337:1337
    volumes:
      - ./app:/srv/app
    depends_on:
      - db
    networks:
      - custom_network

  db:
    container_name: mongo
    image: mongo
    environment:
      - MONGO_INITDB_DATABASE=strapi
    ports:
      - 27017:27017
    volumes:
      - ./db:/data/db
    restart: always
    networks:
      - custom_network


networks:
  custom_network:
    external:
      name: nginx-network