Update Dockerfile to include rsync and refactor backup command in web-server.ts

- Added `rsync` to the Dockerfile for improved file synchronization capabilities.
- Refactored the backup command in `web-server.ts` to use `rsync` instead of `cp`, enhancing error handling and performance during filesystem copying.
This commit is contained in:
Mauricio Siu
2025-05-04 22:19:24 -06:00
parent 95d949f112
commit d8f12f1780
2 changed files with 4 additions and 2 deletions

View File

@@ -29,7 +29,7 @@ WORKDIR /app
# Set production
ENV NODE_ENV=production
RUN apt-get update && apt-get install -y curl unzip zip apache2-utils iproute2 && rm -rf /var/lib/apt/lists/*
RUN apt-get update && apt-get install -y curl unzip zip apache2-utils iproute2 rsync && rm -rf /var/lib/apt/lists/*
# Copy only the necessary files
COPY --from=build /prod/dokploy/.next ./.next

View File

@@ -56,7 +56,9 @@ export const runWebServerBackup = async (backup: BackupSchedule) => {
writeStream.write(`Running command: ${postgresCommand}\n`);
await execAsync(postgresCommand);
await execAsync(`cp -r ${BASE_PATH}/* ${tempDir}/filesystem/`);
await execAsync(
`rsync -av --ignore-errors ${BASE_PATH}/ ${tempDir}/filesystem/`,
);
writeStream.write("Copied filesystem to temp directory\n");