mirror of
https://github.com/danny-avila/LibreChat.git
synced 2025-12-16 08:20:14 +01:00
refactor: address potential issues with deploy-compose.yml (#1220)
* chore: remove /config/loader * chore: remove config/loader steps from Dockerfile.multi * chore: remove install script
This commit is contained in:
parent
4dab094855
commit
12209fe0dd
11 changed files with 25 additions and 27 deletions
|
|
@ -7,7 +7,7 @@ WORKDIR /app
|
|||
# Install call deps - Install curl for health check
|
||||
RUN apk --no-cache add curl && \
|
||||
# We want to inherit env from the container, not the file
|
||||
# This will preserve any existing env file if it's already in souce
|
||||
# This will preserve any existing env file if it's already in source
|
||||
# otherwise it will create a new one
|
||||
touch .env && \
|
||||
# Build deps in seperate
|
||||
|
|
|
|||
|
|
@ -1,13 +1,15 @@
|
|||
# Build API, Client and Data Provider
|
||||
FROM node:19-alpine AS base
|
||||
|
||||
WORKDIR /app
|
||||
COPY config/loader.js ./config/
|
||||
RUN npm install dotenv
|
||||
# WORKDIR /app
|
||||
# COPY config/loader.js ./config/
|
||||
# RUN touch .env
|
||||
# RUN npm install dotenv
|
||||
|
||||
WORKDIR /app/api
|
||||
COPY api/package*.json ./
|
||||
COPY api/ ./
|
||||
RUN touch .env
|
||||
RUN npm install
|
||||
|
||||
# React client build
|
||||
|
|
|
|||
|
|
@ -1,10 +1,12 @@
|
|||
const passport = require('passport');
|
||||
const express = require('express');
|
||||
const router = express.Router();
|
||||
const config = require('../../../config/loader');
|
||||
const { setAuthTokens } = require('../services/AuthService');
|
||||
const { loginLimiter, checkBan } = require('../middleware');
|
||||
const domains = config.domains;
|
||||
const domains = {
|
||||
client: process.env.DOMAIN_CLIENT,
|
||||
server: process.env.DOMAIN_SERVER,
|
||||
};
|
||||
|
||||
router.use(loginLimiter);
|
||||
|
||||
|
|
|
|||
|
|
@ -4,10 +4,13 @@ const User = require('../../models/User');
|
|||
const Session = require('../../models/Session');
|
||||
const Token = require('../../models/schema/tokenSchema');
|
||||
const { registerSchema, errorsToString } = require('../../strategies/validators');
|
||||
const config = require('../../../config/loader');
|
||||
const { sendEmail } = require('../utils');
|
||||
const domains = config.domains;
|
||||
const isProduction = config.isProduction;
|
||||
const domains = {
|
||||
client: process.env.DOMAIN_CLIENT,
|
||||
server: process.env.DOMAIN_SERVER,
|
||||
};
|
||||
|
||||
const isProduction = process.env.NODE_ENV === 'production';
|
||||
|
||||
/**
|
||||
* Logout user
|
||||
|
|
|
|||
|
|
@ -1,7 +1,5 @@
|
|||
const { Strategy: DiscordStrategy } = require('passport-discord');
|
||||
const User = require('../models/User');
|
||||
const config = require('../../config/loader');
|
||||
const domains = config.domains;
|
||||
|
||||
const discordLogin = async (accessToken, refreshToken, profile, cb) => {
|
||||
try {
|
||||
|
|
@ -52,7 +50,7 @@ module.exports = () =>
|
|||
{
|
||||
clientID: process.env.DISCORD_CLIENT_ID,
|
||||
clientSecret: process.env.DISCORD_CLIENT_SECRET,
|
||||
callbackURL: `${domains.server}${process.env.DISCORD_CALLBACK_URL}`,
|
||||
callbackURL: `${process.env.DOMAIN_SERVER}${process.env.DISCORD_CALLBACK_URL}`,
|
||||
scope: ['identify', 'email'],
|
||||
authorizationURL: 'https://discord.com/api/oauth2/authorize?prompt=none',
|
||||
},
|
||||
|
|
|
|||
|
|
@ -1,7 +1,5 @@
|
|||
const FacebookStrategy = require('passport-facebook').Strategy;
|
||||
const User = require('../models/User');
|
||||
const config = require('../../config/loader');
|
||||
const domains = config.domains;
|
||||
|
||||
const facebookLogin = async (accessToken, refreshToken, profile, cb) => {
|
||||
try {
|
||||
|
|
@ -44,7 +42,7 @@ module.exports = () =>
|
|||
{
|
||||
clientID: process.env.FACEBOOK_CLIENT_ID,
|
||||
clientSecret: process.env.FACEBOOK_CLIENT_SECRET,
|
||||
callbackURL: `${domains.server}${process.env.FACEBOOK_CALLBACK_URL}`,
|
||||
callbackURL: `${process.env.DOMAIN_SERVER}${process.env.FACEBOOK_CALLBACK_URL}`,
|
||||
proxy: true,
|
||||
scope: ['public_profile'],
|
||||
profileFields: ['id', 'email', 'name'],
|
||||
|
|
|
|||
|
|
@ -1,7 +1,5 @@
|
|||
const { Strategy: GitHubStrategy } = require('passport-github2');
|
||||
const User = require('../models/User');
|
||||
const config = require('../../config/loader');
|
||||
const domains = config.domains;
|
||||
|
||||
const githubLogin = async (accessToken, refreshToken, profile, cb) => {
|
||||
try {
|
||||
|
|
@ -41,7 +39,7 @@ module.exports = () =>
|
|||
{
|
||||
clientID: process.env.GITHUB_CLIENT_ID,
|
||||
clientSecret: process.env.GITHUB_CLIENT_SECRET,
|
||||
callbackURL: `${domains.server}${process.env.GITHUB_CALLBACK_URL}`,
|
||||
callbackURL: `${process.env.DOMAIN_SERVER}${process.env.GITHUB_CALLBACK_URL}`,
|
||||
proxy: false,
|
||||
scope: ['user:email'],
|
||||
},
|
||||
|
|
|
|||
|
|
@ -1,7 +1,5 @@
|
|||
const { Strategy: GoogleStrategy } = require('passport-google-oauth20');
|
||||
const User = require('../models/User');
|
||||
const config = require('../../config/loader');
|
||||
const domains = config.domains;
|
||||
|
||||
const googleLogin = async (accessToken, refreshToken, profile, cb) => {
|
||||
try {
|
||||
|
|
@ -41,7 +39,7 @@ module.exports = () =>
|
|||
{
|
||||
clientID: process.env.GOOGLE_CLIENT_ID,
|
||||
clientSecret: process.env.GOOGLE_CLIENT_SECRET,
|
||||
callbackURL: `${domains.server}${process.env.GOOGLE_CALLBACK_URL}`,
|
||||
callbackURL: `${process.env.DOMAIN_SERVER}${process.env.GOOGLE_CALLBACK_URL}`,
|
||||
proxy: true,
|
||||
},
|
||||
googleLogin,
|
||||
|
|
|
|||
|
|
@ -3,8 +3,6 @@ const { Issuer, Strategy: OpenIDStrategy } = require('openid-client');
|
|||
const axios = require('axios');
|
||||
const fs = require('fs');
|
||||
const path = require('path');
|
||||
const config = require('../../config/loader');
|
||||
const domains = config.domains;
|
||||
|
||||
const User = require('../models/User');
|
||||
|
||||
|
|
@ -42,7 +40,7 @@ async function setupOpenId() {
|
|||
const client = new issuer.Client({
|
||||
client_id: process.env.OPENID_CLIENT_ID,
|
||||
client_secret: process.env.OPENID_CLIENT_SECRET,
|
||||
redirect_uris: [domains.server + process.env.OPENID_CALLBACK_URL],
|
||||
redirect_uris: [process.env.DOMAIN_SERVER + process.env.OPENID_CALLBACK_URL],
|
||||
});
|
||||
|
||||
const openidLogin = new OpenIDStrategy(
|
||||
|
|
|
|||
|
|
@ -35,7 +35,8 @@ class Env {
|
|||
if (fs.existsSync(this.envMap.default)) {
|
||||
hasDefault = true;
|
||||
dotenv.config({
|
||||
path: this.resolve(this.envMap.default),
|
||||
// path: this.resolve(this.envMap.default),
|
||||
path: path.resolve(__dirname, '..', this.envMap.default),
|
||||
});
|
||||
} else {
|
||||
console.warn('The default .env file was not found');
|
||||
|
|
@ -49,7 +50,8 @@ class Env {
|
|||
// check if the file exists
|
||||
if (fs.existsSync(envFile)) {
|
||||
dotenv.config({
|
||||
path: this.resolve(envFile),
|
||||
// path: this.resolve(envFile),
|
||||
path: path.resolve(__dirname, '..', envFile),
|
||||
});
|
||||
} else if (!hasDefault) {
|
||||
console.warn('No env files found, have you completed the install process?');
|
||||
|
|
|
|||
|
|
@ -8,7 +8,6 @@
|
|||
"packages/*"
|
||||
],
|
||||
"scripts": {
|
||||
"install": "node config/install.js",
|
||||
"update": "node config/update.js",
|
||||
"add-balance": "node config/add-balance.js",
|
||||
"rebuild:package-lock": "node config/packages",
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue