Installing your own instance
Requirements
- A Google Firebase project
- A Firebase Web App
- FireBase Hosting enabled
- Authentication with the Sign-in providers Email/Password enabled.
- Cloud Firestore
- Realtime Database
- Firebase CLI tools locally
- Create an application
- Your project must be on the Blaze pay as you go pricing plan
- Configure
cors.json
on the storage bucket](https://cloud.google.com/storage/docs/configuring-cors) to support your deployed origin. See: functions/src/config/cors.md
Deploying:
firebase use <my-new-project-id>
firebase deploy
Troubleshooting:
-
Error: Can't determine Firebase Database URL
If you see this message it is likely you skipped adding the Realtime Database. Easily done! -
The caller does not have permission
This occurs more commonly when deploying from a CI environment, and usually signifies additional permissions are required for the service account that is used for deployment. You can view the service account details from the GCP Logs Explorer, filtering by severity and expanding to see more information.Examples of previously noted permissions required can be found in Deployment via CircleCI and Firestore DB Backup
Community Platform Maintainers
We deploy to our instances directly from the default branch of the git repository.
You will need to set up a CircleCI context for each target environment. This context should contain the following variables:
FIREBASE_TOKEN
GOOGLE_APPLICATION_CREDENTIALS_JSON
VITE_BRANCH
VITE_FIREBASE_API_KEY
VITE_FIREBASE_AUTH_DOMAIN
VITE_FIREBASE_DATABASE_URL
VITE_FIREBASE_MESSAGING_SENDER_ID
VITE_FIREBASE_PROJECT_ID
VITE_FIREBASE_STORAGE_BUCKET
VITE_GA_TRACKING_ID
VITE_THEME
VITE_CDN_URL
-https://cdn-url.com
- this is the URL to the CDN where the assets are stored. This is used to load the assets from the CDN instead of the local server. It should not include a trailing slash.VITE_PLATFORM_PROFILES
- comma separated list of available profiles. UseProfileType
from modules/profile/index for guidance here. For example:member,workspace
VITE_SUPPORTED_MODULES
– comma separated list of available modules. See/src/modules/index.ts
for the definitions.VITE_API_URL
– 'https://api-url.com' - this is the URL to the API service. It should not include a trailing slash.SITE_NAME