RIDM Apps アプリホスティング

GitHub リポジトリをつなぐと、push のたびにビルド・デプロイされ、<name>.ridm.ai で公開されます。アプリごとに専用の PostgreSQL データベースが付くので、会員・投稿・記録をすぐに保存できます。四柱推命(サジュ)API で作ったアプリも、API をまったく使わない一般的な Web アプリもホスティングできます。

マイアプリで申し込む デプロイガイド プランと料金 ドメイン検索

4つのステップでデプロイ

  1. 申し込み — コンソールのマイアプリで、プランとアドレス(サブドメイン)を選びます。
  2. GitHub 連携 — GitHub App ridm-apps-builder をインストールし、リポジトリとブランチを選びます。リポジトリには読み取り権限だけが付与されます。
  3. Push — つないだブランチに push するたびにビルドが始まります。ビルド履歴と失敗ログはアプリ画面に表示されます。
  4. 公開 — 成功したビルドは自動チェックを経て、すぐに公開されます。有料プランの課金は、最初のデプロイが公開されるまで始まりません。

HTML・CSS・JS だけの静的サイトも、コンテナ(Dockerfile)として公開します。ファイルを public/ に置き、下の Dockerfile をリポジトリのルートに追加してください。ポート 3000、ユーザー 1000 などの要件はデプロイガイドにあります。

FROM busybox:1.36
COPY --chown=1000:1000 public /www
USER 1000:1000
EXPOSE 3000
CMD ["httpd", "-f", "-p", "3000", "-h", "/www"]

大きな3D・画像中心の静的サイトのホスティング

three.js のゲームのように、数十MBのモデル(.glb)やテクスチャがあるサイトは、busybox ではなく nginx:alpine を使ってください。busybox の httpd はキャッシュヘッダーを設定できず、.glb や .ktx2 を汎用ファイルとして配信します。下の2つのファイルをリポジトリのルートに置くと、ビルド結果(Vite なら dist/)がそのまま配信されます。

# Dockerfile
FROM node:22-alpine AS build
WORKDIR /app
COPY package.json package-lock.json ./
RUN npm ci
COPY . .
RUN npm run build

FROM nginx:1.27-alpine
COPY nginx.conf /etc/nginx/nginx.conf
COPY --from=build --chown=1000:1000 /app/dist /usr/share/nginx/html
USER 1000:1000
EXPOSE 3000
ENTRYPOINT ["nginx", "-g", "daemon off;"]
# nginx.conf — runs as user 1000 on a read-only file system: only /tmp is writable.
worker_processes 1;
pid /tmp/nginx.pid;
error_log /dev/stderr warn;

events { worker_connections 1024; }

http {
    include /etc/nginx/mime.types;
    # 3D types missing from the stock mime.types (.wasm is already there).
    types {
        model/gltf-binary glb;
        model/gltf+json   gltf;
        image/ktx2        ktx2;
    }
    default_type application/octet-stream;

    client_body_temp_path /tmp/client_temp;
    proxy_temp_path       /tmp/proxy_temp;
    fastcgi_temp_path     /tmp/fastcgi_temp;
    uwsgi_temp_path       /tmp/uwsgi_temp;
    scgi_temp_path        /tmp/scgi_temp;

    access_log off;
    server_tokens off;
    sendfile on;
    tcp_nopush on;

    # Text formats only. .glb / .ktx2 / images are already compressed.
    gzip on;
    gzip_vary on;
    gzip_min_length 1024;
    gzip_comp_level 5;
    gzip_types text/css application/javascript text/javascript application/json
               image/svg+xml model/gltf+json application/wasm text/plain;

    # /assets/ = bundler output whose names carry a content hash (Vite default).
    map $uri $cache_control {
        ~^/assets/ "public, max-age=31536000, immutable";
        ~*\.(?:glb|gltf|bin|ktx2|basis|hdr|webp|avif|png|jpe?g|svg|mp3|ogg|wasm|js|css|woff2?)$ "public, max-age=3600";
        default    "no-cache";
    }
    # Errors (404 etc.) are never cached, so a file added later shows up at once.
    map $status $cache_header {
        ~^(200|206|304)$ $cache_control;
        default          "no-store";
    }

    server {
        listen 3000;
        root /usr/share/nginx/html;

        add_header Cache-Control $cache_header always;
        # Keeps the site out of search results. Delete this line to be indexed.
        add_header X-Robots-Tag "noindex, nofollow" always;

        location / {
            try_files $uri $uri/ =404;
        }
    }
}

含まれるもの

プラン

各プランの料金・メモリー・データベース容量・月間転送量は料金ページをご覧ください。解約すると、支払い済みの期間の終わりにアプリが停止し、その後30日間はデータのダウンロードやアプリの復元ができます。

知っておきたい制限

すべての条件はデプロイガイドと利用規約 第3章(韓国語)をご覧ください。

ゼロから作ってみたいですか?

AIで作る会員制Webアプリ(韓国語)は、無料の実践型電子書籍です。AIコーディングツールに最初の1文を渡すだけで、新規登録とログイン、会員専用メモ帳、RIDM Apps での公開までを順に進められます。四柱推命アプリを作るならオールインワン占いAI(韓国語)を、四柱推命APIの連携から始めるなら開発者向けはじめにガイドをご覧ください。

コードなしで作るなら、Baro(ブロック型アプリビルダー)で四柱推命や占いのブロックを組み合わせてアプリを作り、ダウンロードしたデプロイバンドルをそのまま RIDM Apps にアップロードしてください。

制作からサーバー・データベース・ドメインまでをまとめて任せたい場合は、ワンストップアプリ開発をご覧ください。

お問い合わせ:contact@float.do · 運営:FLOAT Co., Ltd.