From 8f9462245a38a2800e1d8d7581402f2662a1a524 Mon Sep 17 00:00:00 2001 From: Andras Bacsai Date: Tue, 12 Jul 2022 09:58:59 +0200 Subject: [PATCH] feat: Add Docker buildpack exposed port setting --- apps/api/src/lib/buildPacks/common.ts | 2 +- apps/api/src/lib/buildPacks/gatsby.ts | 2 +- apps/api/src/lib/buildPacks/nextjs.ts | 2 +- apps/api/src/lib/buildPacks/nuxtjs.ts | 2 +- apps/api/src/lib/buildPacks/react.ts | 2 +- apps/api/src/lib/buildPacks/static.ts | 2 +- apps/api/src/lib/buildPacks/svelte.ts | 2 +- apps/api/src/lib/buildPacks/vuejs.ts | 2 +- .../src/routes/applications/[id]/index.svelte | 32 +++++++++---------- apps/ui/src/tailwind.css | 2 +- 10 files changed, 24 insertions(+), 26 deletions(-) diff --git a/apps/api/src/lib/buildPacks/common.ts b/apps/api/src/lib/buildPacks/common.ts index cea1d0b40..1feb33822 100644 --- a/apps/api/src/lib/buildPacks/common.ts +++ b/apps/api/src/lib/buildPacks/common.ts @@ -438,7 +438,7 @@ export async function copyBaseConfigurationFiles( buildId, applicationId }); - } else if (baseImage.includes('nginx')) { + } else if (baseImage?.includes('nginx')) { await fs.writeFile( `${workdir}/nginx.conf`, `user nginx; diff --git a/apps/api/src/lib/buildPacks/gatsby.ts b/apps/api/src/lib/buildPacks/gatsby.ts index c0b76b2a5..fbb0a933f 100644 --- a/apps/api/src/lib/buildPacks/gatsby.ts +++ b/apps/api/src/lib/buildPacks/gatsby.ts @@ -9,7 +9,7 @@ const createDockerfile = async (data, imageforBuild): Promise => { Dockerfile.push('WORKDIR /app'); Dockerfile.push(`LABEL coolify.buildId=${buildId}`); Dockerfile.push(`COPY --from=${applicationId}:${tag}-cache /app/${publishDirectory} ./`); - if (baseImage.includes('nginx')) { + if (baseImage?.includes('nginx')) { Dockerfile.push(`COPY /nginx.conf /etc/nginx/nginx.conf`); } Dockerfile.push(`EXPOSE ${port}`); diff --git a/apps/api/src/lib/buildPacks/nextjs.ts b/apps/api/src/lib/buildPacks/nextjs.ts index d7de9a482..90d80449e 100644 --- a/apps/api/src/lib/buildPacks/nextjs.ts +++ b/apps/api/src/lib/buildPacks/nextjs.ts @@ -48,7 +48,7 @@ const createDockerfile = async (data, image): Promise => { Dockerfile.push(`EXPOSE ${port}`); Dockerfile.push(`CMD ${startCommand}`); } else if (deploymentType === 'static') { - if (baseImage.includes('nginx')) { + if (baseImage?.includes('nginx')) { Dockerfile.push(`COPY /nginx.conf /etc/nginx/nginx.conf`); } Dockerfile.push(`COPY --from=${applicationId}:${tag}-cache /app/${publishDirectory} ./`); diff --git a/apps/api/src/lib/buildPacks/nuxtjs.ts b/apps/api/src/lib/buildPacks/nuxtjs.ts index d7de9a482..90d80449e 100644 --- a/apps/api/src/lib/buildPacks/nuxtjs.ts +++ b/apps/api/src/lib/buildPacks/nuxtjs.ts @@ -48,7 +48,7 @@ const createDockerfile = async (data, image): Promise => { Dockerfile.push(`EXPOSE ${port}`); Dockerfile.push(`CMD ${startCommand}`); } else if (deploymentType === 'static') { - if (baseImage.includes('nginx')) { + if (baseImage?.includes('nginx')) { Dockerfile.push(`COPY /nginx.conf /etc/nginx/nginx.conf`); } Dockerfile.push(`COPY --from=${applicationId}:${tag}-cache /app/${publishDirectory} ./`); diff --git a/apps/api/src/lib/buildPacks/react.ts b/apps/api/src/lib/buildPacks/react.ts index 169af33cc..e85704d3f 100644 --- a/apps/api/src/lib/buildPacks/react.ts +++ b/apps/api/src/lib/buildPacks/react.ts @@ -9,7 +9,7 @@ const createDockerfile = async (data, image): Promise => { Dockerfile.push(`LABEL coolify.buildId=${buildId}`); Dockerfile.push('WORKDIR /app'); Dockerfile.push(`COPY --from=${applicationId}:${tag}-cache /app/${publishDirectory} ./`); - if (baseImage.includes('nginx')) { + if (baseImage?.includes('nginx')) { Dockerfile.push(`COPY /nginx.conf /etc/nginx/nginx.conf`); } Dockerfile.push(`EXPOSE ${port}`); diff --git a/apps/api/src/lib/buildPacks/static.ts b/apps/api/src/lib/buildPacks/static.ts index 67f85b4f4..47fa0dfa4 100644 --- a/apps/api/src/lib/buildPacks/static.ts +++ b/apps/api/src/lib/buildPacks/static.ts @@ -40,7 +40,7 @@ const createDockerfile = async (data, image): Promise => { } else { Dockerfile.push(`COPY .${baseDirectory || ''} ./`); } - if (baseImage.includes('nginx')) { + if (baseImage?.includes('nginx')) { Dockerfile.push(`COPY /nginx.conf /etc/nginx/nginx.conf`); } Dockerfile.push(`EXPOSE ${port}`); diff --git a/apps/api/src/lib/buildPacks/svelte.ts b/apps/api/src/lib/buildPacks/svelte.ts index 4933d10ff..56fc12d7a 100644 --- a/apps/api/src/lib/buildPacks/svelte.ts +++ b/apps/api/src/lib/buildPacks/svelte.ts @@ -9,7 +9,7 @@ const createDockerfile = async (data, image): Promise => { Dockerfile.push('WORKDIR /app'); Dockerfile.push(`LABEL coolify.buildId=${buildId}`); Dockerfile.push(`COPY --from=${applicationId}:${tag}-cache /app/${publishDirectory} ./`); - if (baseImage.includes('nginx')) { + if (baseImage?.includes('nginx')) { Dockerfile.push(`COPY /nginx.conf /etc/nginx/nginx.conf`); } Dockerfile.push(`EXPOSE ${port}`); diff --git a/apps/api/src/lib/buildPacks/vuejs.ts b/apps/api/src/lib/buildPacks/vuejs.ts index 4933d10ff..56fc12d7a 100644 --- a/apps/api/src/lib/buildPacks/vuejs.ts +++ b/apps/api/src/lib/buildPacks/vuejs.ts @@ -9,7 +9,7 @@ const createDockerfile = async (data, image): Promise => { Dockerfile.push('WORKDIR /app'); Dockerfile.push(`LABEL coolify.buildId=${buildId}`); Dockerfile.push(`COPY --from=${applicationId}:${tag}-cache /app/${publishDirectory} ./`); - if (baseImage.includes('nginx')) { + if (baseImage?.includes('nginx')) { Dockerfile.push(`COPY /nginx.conf /etc/nginx/nginx.conf`); } Dockerfile.push(`EXPOSE ${port}`); diff --git a/apps/ui/src/routes/applications/[id]/index.svelte b/apps/ui/src/routes/applications/[id]/index.svelte index 52660af23..a10cfee67 100644 --- a/apps/ui/src/routes/applications/[id]/index.svelte +++ b/apps/ui/src/routes/applications/[id]/index.svelte @@ -626,22 +626,20 @@ /> {/if} - {#if application.buildPack !== 'docker'} -
- - -
Useful if you would like to use your own reverse proxy or tunnel and also in development mode. Otherwise leave empty.'} - /> -
- {/if} +
+ + +
Useful if you would like to use your own reverse proxy or tunnel and also in development mode. Otherwise leave empty.'} + /> +
{#if !notNodeDeployments.includes(application.buildPack)}
{/if} diff --git a/apps/ui/src/tailwind.css b/apps/ui/src/tailwind.css index d843f62ea..38d4cc6b8 100644 --- a/apps/ui/src/tailwind.css +++ b/apps/ui/src/tailwind.css @@ -91,7 +91,7 @@ label { @apply inline-block w-64 text-xs tracking-tight md:text-sm; } -button { +button, .button { @apply rounded bg-coolgray-200 p-1 px-2 py-1 text-xs font-bold outline-none transition-all duration-100 hover:bg-coolgray-500 disabled:cursor-not-allowed disabled:bg-coolblack disabled:text-stone-600; }