みんなでつくる日本酒オープンデータSakepediaのNuxt3版
Docker Nuxt3.11.1 yarn
FirebaseのウェブアプリのSDK の設定と構成
を参照
app/.env
NUXT_PUBLIC_FIREBASE_API_KEY=
NUXT_PUBLIC_FIREBASE_AUTH_DOMAIN=
NUXT_PUBLIC_FIREBASE_PROJECT_ID=
NUXT_PUBLIC_FIREBASE_STORAGE_BUCKET=
NUXT_PUBLIC_FIREBASE_MESSAGEING_SENDER_ID=
NUXT_PUBLIC_FIREBASE_APP_ID=
NUXT_PUBLIC_FIREBASE_MEASUREMENT_ID=
.firebaserc
{
"projects": {
"default": "<FirebaseのプロジェクトID>"
}
}
docker-compose up -d
docker-compose run --rm firebase firebase login --no-localhost
Success! Logged in as xxxx
が出てきたらログインOKdocker-compose exec nuxt bash
yarn install
yarn dev
yarn build --preset=firebase
npx firebase-tools deploy --project sakepedia-nuxt3
ESLint を使用しています
.vscode/settings.json
に以下の項目を追記します"eslint.experimental.useFlatConfig": true,
"eslint.workingDirectories": [
"./app"
]
Prettier を使用しています
rm -rf /opt/data/bkp
firebase emulators:export /opt/data/bkp
rm -rf /opt/data/bkp
gcloud storage cp -r "gs://sakepedia-data/2024-06-12T10:56:22_57740" /opt/data
mv /opt/data/2024-06-12T10:56:22_57740 /opt/data/bkp
コンテナ内のインストール yarn install
ステップで、gyp
というエラーメッセージが表示されてインストールに失敗する。
この問題を解決するには、コンテナを作成する前に yarn remove firebase-admin
を使用して firebase-admin
依存関係を削除する必要がある。
まだ行けない場合、Dockerfile.m5
をDockerfile
に上書きしてからdockerのイメージをbuildをしたらいける(かも)。
mongoexport -d Sakepedia -c breweries --out breweries.json
mongoexport -d Sakepedia -c brands --out brands.json
mongoexport -d Sakepedia -c sakes --out sakes.json
mongoexport -d Sakepedia -c comments --out comments.json
mongoexport -d Sakepedia -c brewery_year_datas --out brewery_year_datas.json
mongoexport -d Sakepedia -c breweryyeardatas --out breweryyeardatas.json
yarn dev
http://localhost:3000/dumper 以下の順でボタン押下してインポート コンソールログにdoneが出るまで待つ。
rm -rf /opt/data/bkp
firebase emulators:export /opt/data/bkp
gcloud storage cp -r /opt/data "gs://sakepedia-data/2024-10-01"
Firebaseプロジェクト Firestore Database Google Cloudのその他の機能 インポート/エクスポート を選択
インポート アップロードしたフォルダ内のoverall_export_metadataを参照 sakepedia-data/2024-10-01/firestore_export/firestore_export.overall_export_metadata
cd /opt/data
bash upload.sh