docker-composeでnocodbをインストール

Docker-composeでNocoDBをインストールした。

前提条件

docker、docker-composeがインストールされており、traefik、mariadbを動作させている。

  • mariadbのコンテナ名はmariadb
  • mariadbには、あらかじめnocodbというデータベースを作成しておく。
  • traefik-networkというブリッジネットワークを作っており、mariadbもこれに参加している。

docker-compose.yml

docker-compose.ymlは以下

version: "2.1"
services:
  nocodb:
    environment:
# mysql2はプロトコルを示している
      NC_DB: "mysql2://mariadb:3306?u=root&p=root&d=nocodb"
    image: "nocodb/nocodb:latest"
# これは不要。nocodbのデフォルトポートを明確にするため
#    ports: 
#      - "8080:8080"
    restart: always
    volumes:
      - "./data:/usr/app/data"
# Traefikに認識してもらうための設定
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.nocodb.rule=Host(`nocodb.example.com`)"
      - "traefik.http.routers.nocodb.entrypoints=websecure"
      - "traefik.http.services.nocodb.loadbalancer.server.port=8080"
      - "traefik.http.routers.nocodb.tls.certresolver=myresolver"
      - "traefik.http.routers.nocodb-http.entrypoints=web"
      - "traefik.http.routers.nocodb-http.rule=Host(`nocodb.example.com`)"
      - "traefik.http.routers.nocodb-http.middlewares=nocodb-https"
      - "traefik.http.middlewares.nocodb-https.redirectscheme.scheme=https"
# ネットワーク
networks:
  default:
    external:
      name: traefik-network

以下で動作する

docker-compose up -d

管理者の登録

https://nocodb.example.comにアクセスし、管理者のメアドとパスワードを指定する。

その後、次の画面が現れる。