feat: add environment variable handling in Dockerfile and update Firebase configuration
This commit is contained in:
parent
e5af3b8c51
commit
1f2a71452b
12
Dockerfile
12
Dockerfile
@ -10,15 +10,9 @@ RUN npm run build
|
|||||||
FROM nginx:alpine
|
FROM nginx:alpine
|
||||||
COPY --from=builder /app/dist /usr/share/nginx/html
|
COPY --from=builder /app/dist /usr/share/nginx/html
|
||||||
COPY nginx.conf /etc/nginx/conf.d/default.conf
|
COPY nginx.conf /etc/nginx/conf.d/default.conf
|
||||||
|
COPY env.sh /docker-entrypoint.d/env.sh
|
||||||
|
RUN chmod +x /docker-entrypoint.d/env.sh
|
||||||
|
|
||||||
EXPOSE 80
|
EXPOSE 80
|
||||||
|
|
||||||
ENV VITE_API_BASE_URL=https://api.example.com
|
|
||||||
ENV VITE_FIREBASE_API_KEY=firebase-api
|
|
||||||
ENV VITE_FIREBASE_AUTH_DOMAIN=firebase-auth
|
|
||||||
ENV VITE_FIREBASE_PROJECT_ID=firebase-project
|
|
||||||
ENV VITE_FIREBASE_STORAGE_BUCKET=firebase-storage
|
|
||||||
ENV VITE_FIREBASE_MESSAGING_SENDER_ID=firebase-messaging
|
|
||||||
ENV VITE_FIREBASE_APP_ID=firebase-app
|
|
||||||
ENV VITE_FIREBASE_MEASUREMENT_ID=firebase-measurement
|
|
||||||
|
|
||||||
CMD ["nginx", "-g", "daemon off;"]
|
CMD ["nginx", "-g", "daemon off;"]
|
||||||
|
12
env.sh
Normal file
12
env.sh
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
for i in $(env | grep MY_APP_)
|
||||||
|
do
|
||||||
|
key=$(echo $i | cut -d '=' -f 1)
|
||||||
|
value=$(echo $i | cut -d '=' -f 2-)
|
||||||
|
echo $key=$value
|
||||||
|
# sed All files
|
||||||
|
# find /usr/share/nginx/html -type f -exec sed -i "s|${key}|${value}|g" '{}' +
|
||||||
|
|
||||||
|
# sed JS and CSS only
|
||||||
|
find /usr/share/nginx/html -type f \( -name '*.js' -o -name '*.css' \) -exec sed -i "s|${key}|${value}|g" '{}' +
|
||||||
|
done
|
@ -4,13 +4,13 @@ import { getAuth } from 'firebase/auth';
|
|||||||
import { getAnalytics } from 'firebase/analytics';
|
import { getAnalytics } from 'firebase/analytics';
|
||||||
|
|
||||||
const firebaseConfig = {
|
const firebaseConfig = {
|
||||||
apiKey: import.meta.env.VITE_FIREBASE_API_KEY || 'firebaseApiKey',
|
apiKey: import.meta.env.VITE_FIREBASE_API_KEY || 'VITE_FIREBASE_API_KEY',
|
||||||
authDomain: import.meta.env.VITE_FIREBASE_AUTH_DOMAIN || 'firebaseAuthDomain',
|
authDomain: import.meta.env.VITE_FIREBASE_AUTH_DOMAIN || 'VITE_FIREBASE_AUTH_DOMAIN',
|
||||||
projectId: import.meta.env.VITE_FIREBASE_PROJECT_ID || 'firebaseProjectId',
|
projectId: import.meta.env.VITE_FIREBASE_PROJECT_ID || 'VITE_FIREBASE_PROJECT_ID',
|
||||||
storageBucket: import.meta.env.VITE_FIREBASE_STORAGE_BUCKET || 'firebaseStorageBucket',
|
storageBucket: import.meta.env.VITE_FIREBASE_STORAGE_BUCKET || 'VITE_FIREBASE_STORAGE_BUCKET',
|
||||||
messagingSenderId: import.meta.env.VITE_FIREBASE_MESSAGING_SENDER_ID || 'firebaseMessagingSenderId',
|
messagingSenderId: import.meta.env.VITE_FIREBASE_MESSAGING_SENDER_ID || 'VITE_FIREBASE_MESSAGING_SENDER_ID',
|
||||||
appId: import.meta.env.VITE_FIREBASE_APP_ID || 'firebaseAppId',
|
appId: import.meta.env.VITE_FIREBASE_APP_ID || 'VITE_FIREBASE_APP_ID',
|
||||||
measurementId: import.meta.env.VITE_FIREBASE_MEASUREMENT_ID || 'firebaseMeasurementId',
|
measurementId: import.meta.env.VITE_FIREBASE_MEASUREMENT_ID || 'VITE_FIREBASE_MEASUREMENT_ID',
|
||||||
};
|
};
|
||||||
|
|
||||||
const app = initializeApp(firebaseConfig);
|
const app = initializeApp(firebaseConfig);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user