diff --git a/Dockerfile b/Dockerfile index 6638bb202..adcbee05b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -22,7 +22,7 @@ ARG DOCKER_VERSION=20.10.18 # Reverted to 2.6.1 because of this https://github.com/docker/compose/issues/9704. 2.9.0 still has a bug. ARG DOCKER_COMPOSE_VERSION=2.6.1 # https://github.com/buildpacks/pack/releases -ARG PACK_VERSION=v0.27.0 +ARG PACK_VERSION=0.27.0 RUN apt update && apt -y install --no-install-recommends ca-certificates git git-lfs openssh-client curl jq cmake sqlite3 openssl psmisc python3 RUN apt-get clean autoclean && apt-get autoremove --yes && rm -rf /var/lib/{apt,dpkg,cache,log}/ @@ -50,4 +50,4 @@ RUN pnpm install -p EXPOSE 3000 ENV CHECKPOINT_DISABLE=1 -CMD pnpm start \ No newline at end of file +CMD pnpm start diff --git a/Dockerfile-dev b/Dockerfile-dev index 198307656..13b3a8560 100644 --- a/Dockerfile-dev +++ b/Dockerfile-dev @@ -9,7 +9,7 @@ ARG DOCKER_VERSION=20.10.18 # Reverted to 2.6.1 because of this https://github.com/docker/compose/issues/9704. 2.9.0 still has a bug. ARG DOCKER_COMPOSE_VERSION=2.6.1 # https://github.com/buildpacks/pack/releases -ARG PACK_VERSION=v0.27.0 +ARG PACK_VERSION=0.27.0 WORKDIR /app RUN npm --no-update-notifier --no-fund --global install pnpm@${PNPM_VERSION} @@ -28,4 +28,4 @@ RUN curl -SL https://cdn.coollabs.io/bin/$TARGETPLATFORM/pack-$PACK_VERSION -o / RUN chmod +x ~/.docker/cli-plugins/docker-compose /usr/bin/docker /usr/local/bin/pack EXPOSE 3000 -ENV CHECKPOINT_DISABLE=1 \ No newline at end of file +ENV CHECKPOINT_DISABLE=1 diff --git a/README.md b/README.md index 4986cd150..3628d68fd 100644 --- a/README.md +++ b/README.md @@ -153,3 +153,6 @@ Support this project with your organization. Your logo will show up here with a +## Star History + +[![Star History Chart](https://api.star-history.com/svg?repos=coollabsio/coolify&type=Date)](https://star-history.com/#coollabsio/coolify&Date) diff --git a/apps/api/src/lib/buildPacks/compose.ts b/apps/api/src/lib/buildPacks/compose.ts index 9e3ab12cb..439462231 100644 --- a/apps/api/src/lib/buildPacks/compose.ts +++ b/apps/api/src/lib/buildPacks/compose.ts @@ -95,7 +95,7 @@ export default async function (data) { value['volumes'].push(volume); } } - if (dockerComposeConfiguration[key].port) { + if (dockerComposeConfiguration[key]?.port) { value['expose'] = [dockerComposeConfiguration[key].port]; } if (value['networks']?.length > 0) { diff --git a/apps/api/src/lib/buildPacks/gatsby.ts b/apps/api/src/lib/buildPacks/gatsby.ts index fbb0a933f..e630518cb 100644 --- a/apps/api/src/lib/buildPacks/gatsby.ts +++ b/apps/api/src/lib/buildPacks/gatsby.ts @@ -8,7 +8,7 @@ const createDockerfile = async (data, imageforBuild): Promise => { Dockerfile.push(`FROM ${imageforBuild}`); Dockerfile.push('WORKDIR /app'); Dockerfile.push(`LABEL coolify.buildId=${buildId}`); - Dockerfile.push(`COPY --from=${applicationId}:${tag}-cache /app/${publishDirectory} ./`); + Dockerfile.push(`COPY --from=${applicationId}:${tag}-cache /app/ ./`); if (baseImage?.includes('nginx')) { Dockerfile.push(`COPY /nginx.conf /etc/nginx/nginx.conf`); } diff --git a/apps/api/src/lib/buildPacks/nestjs.ts b/apps/api/src/lib/buildPacks/nestjs.ts index 90c99301b..88b48e6fe 100644 --- a/apps/api/src/lib/buildPacks/nestjs.ts +++ b/apps/api/src/lib/buildPacks/nestjs.ts @@ -12,7 +12,7 @@ const createDockerfile = async (data, image): Promise => { if (isPnpm) { Dockerfile.push('RUN curl -f https://get.pnpm.io/v6.16.js | node - add --global pnpm@7'); } - Dockerfile.push(`COPY --from=${applicationId}:${tag}-cache /app/${baseDirectory || ''} ./`); + Dockerfile.push(`COPY --from=${applicationId}:${tag}-cache /app/ ./`); Dockerfile.push(`EXPOSE ${port}`); Dockerfile.push(`CMD ${startCommand}`); diff --git a/apps/api/src/lib/buildPacks/nextjs.ts b/apps/api/src/lib/buildPacks/nextjs.ts index 957dc5bce..cc7fe36b4 100644 --- a/apps/api/src/lib/buildPacks/nextjs.ts +++ b/apps/api/src/lib/buildPacks/nextjs.ts @@ -42,7 +42,7 @@ const createDockerfile = async (data, image): Promise => { if (baseImage?.includes('nginx')) { Dockerfile.push(`COPY /nginx.conf /etc/nginx/nginx.conf`); } - Dockerfile.push(`COPY --from=${applicationId}:${tag}-cache /app/${publishDirectory} ./`); + Dockerfile.push(`COPY --from=${applicationId}:${tag}-cache /app/ ./`); Dockerfile.push(`EXPOSE 80`); } diff --git a/apps/api/src/lib/buildPacks/nuxtjs.ts b/apps/api/src/lib/buildPacks/nuxtjs.ts index 957dc5bce..cc7fe36b4 100644 --- a/apps/api/src/lib/buildPacks/nuxtjs.ts +++ b/apps/api/src/lib/buildPacks/nuxtjs.ts @@ -42,7 +42,7 @@ const createDockerfile = async (data, image): Promise => { if (baseImage?.includes('nginx')) { Dockerfile.push(`COPY /nginx.conf /etc/nginx/nginx.conf`); } - Dockerfile.push(`COPY --from=${applicationId}:${tag}-cache /app/${publishDirectory} ./`); + Dockerfile.push(`COPY --from=${applicationId}:${tag}-cache /app/ ./`); Dockerfile.push(`EXPOSE 80`); } diff --git a/apps/api/src/lib/buildPacks/react.ts b/apps/api/src/lib/buildPacks/react.ts index e85704d3f..d47eb5847 100644 --- a/apps/api/src/lib/buildPacks/react.ts +++ b/apps/api/src/lib/buildPacks/react.ts @@ -8,7 +8,7 @@ const createDockerfile = async (data, image): Promise => { Dockerfile.push(`FROM ${image}`); Dockerfile.push(`LABEL coolify.buildId=${buildId}`); Dockerfile.push('WORKDIR /app'); - Dockerfile.push(`COPY --from=${applicationId}:${tag}-cache /app/${publishDirectory} ./`); + Dockerfile.push(`COPY --from=${applicationId}:${tag}-cache /app/ ./`); if (baseImage?.includes('nginx')) { Dockerfile.push(`COPY /nginx.conf /etc/nginx/nginx.conf`); } diff --git a/apps/api/src/lib/buildPacks/static.ts b/apps/api/src/lib/buildPacks/static.ts index 19b13cef3..1a9916082 100644 --- a/apps/api/src/lib/buildPacks/static.ts +++ b/apps/api/src/lib/buildPacks/static.ts @@ -31,7 +31,7 @@ const createDockerfile = async (data, image): Promise => { }); } if (buildCommand) { - Dockerfile.push(`COPY --from=${applicationId}:${tag}-cache /app/${publishDirectory} ./`); + Dockerfile.push(`COPY --from=${applicationId}:${tag}-cache /app/ ./`); } else { Dockerfile.push(`COPY .${baseDirectory || ''} ./`); } diff --git a/apps/api/src/lib/buildPacks/svelte.ts b/apps/api/src/lib/buildPacks/svelte.ts index 56fc12d7a..74e377657 100644 --- a/apps/api/src/lib/buildPacks/svelte.ts +++ b/apps/api/src/lib/buildPacks/svelte.ts @@ -8,7 +8,7 @@ const createDockerfile = async (data, image): Promise => { Dockerfile.push(`FROM ${image}`); Dockerfile.push('WORKDIR /app'); Dockerfile.push(`LABEL coolify.buildId=${buildId}`); - Dockerfile.push(`COPY --from=${applicationId}:${tag}-cache /app/${publishDirectory} ./`); + Dockerfile.push(`COPY --from=${applicationId}:${tag}-cache /app/ ./`); if (baseImage?.includes('nginx')) { Dockerfile.push(`COPY /nginx.conf /etc/nginx/nginx.conf`); } diff --git a/apps/api/src/lib/buildPacks/vuejs.ts b/apps/api/src/lib/buildPacks/vuejs.ts index 56fc12d7a..74e377657 100644 --- a/apps/api/src/lib/buildPacks/vuejs.ts +++ b/apps/api/src/lib/buildPacks/vuejs.ts @@ -8,7 +8,7 @@ const createDockerfile = async (data, image): Promise => { Dockerfile.push(`FROM ${image}`); Dockerfile.push('WORKDIR /app'); Dockerfile.push(`LABEL coolify.buildId=${buildId}`); - Dockerfile.push(`COPY --from=${applicationId}:${tag}-cache /app/${publishDirectory} ./`); + Dockerfile.push(`COPY --from=${applicationId}:${tag}-cache /app/ ./`); if (baseImage?.includes('nginx')) { Dockerfile.push(`COPY /nginx.conf /etc/nginx/nginx.conf`); } diff --git a/apps/api/src/lib/common.ts b/apps/api/src/lib/common.ts index ab90b3a53..a3c754f15 100644 --- a/apps/api/src/lib/common.ts +++ b/apps/api/src/lib/common.ts @@ -19,7 +19,7 @@ import { saveBuildLog, saveDockerRegistryCredentials } from './buildPacks/common import { scheduler } from './scheduler'; import type { ExecaChildProcess } from 'execa'; -export const version = '3.12.21'; +export const version = '3.12.22'; export const isDev = process.env.NODE_ENV === 'development'; export const proxyPort = process.env.COOLIFY_PROXY_PORT; export const proxySecurePort = process.env.COOLIFY_PROXY_SECURE_PORT; diff --git a/apps/api/src/routes/api/v1/applications/handlers.ts b/apps/api/src/routes/api/v1/applications/handlers.ts index 8d8f3ead2..886b7bc88 100644 --- a/apps/api/src/routes/api/v1/applications/handlers.ts +++ b/apps/api/src/routes/api/v1/applications/handlers.ts @@ -736,7 +736,7 @@ export async function deleteApplication( where: { id }, include: { destinationDocker: true, teams: true } }); - if (teamId !== '0' || !application.teams.some((team) => team.id === teamId)) { + if (teamId !== '0' && !application.teams.some((team) => team.id === teamId)) { throw { status: 403, message: 'You are not allowed to delete this application.' }; } if (application?.destinationDocker?.id && application.destinationDocker?.network) { diff --git a/apps/ui/src/routes/applications/[id]/configuration/_GitlabRepositories.svelte b/apps/ui/src/routes/applications/[id]/configuration/_GitlabRepositories.svelte index 737fc426f..97db0ba07 100644 --- a/apps/ui/src/routes/applications/[id]/configuration/_GitlabRepositories.svelte +++ b/apps/ui/src/routes/applications/[id]/configuration/_GitlabRepositories.svelte @@ -406,7 +406,7 @@ > {#if tryAgain}
- An error occured during authenticating with GitLab. Please check your GitLab Source + An error occurred during authenticating with GitLab. Please check your GitLab Source configuration here.