<x-forms.inputhelper="You can specify one domain with path or more with comma. You can specify a port to bind the domain to.<br><br><span class='text-helper'>Example</span><br>- http://app.coolify.io,https://cloud.coolify.io/dashboard<br>- http://app.coolify.io/api/v3<br>- http://app.coolify.io:3000 -> app.coolify.io will point to port 3000 inside the container. "label="Domains for {{ str($serviceName)->headline() }}"id="parsedServiceDomains.{{$serviceName }}.domain"></x-forms.input>
<x-forms.inputplaceholder="https://lasthourhosting.org"id="application.fqdn"label="Domains"helper="You can specify one domain with path or more with comma. You can specify a port to bind the domain to.<br><br><span class='text-helper'>Example</span><br>- http://app.lasthourhosting.org,https://cloud.lasthourhosting.org/dashboard<br>- http://app.lasthourhosting.org/api/v3<br>- http://app.lasthourhosting.org:3000 -> app.lasthourhosting.org will point to port 3000 inside the container. "/>
<x-helperhelper="Push the built image to a docker registry. More info <a class='underline' href='https://coolify.io/docs/knowledge-base/docker/registry' target='_blank'>here</a>."/>
<x-forms.checkboxinstantSaveid="application.settings.is_raw_compose_deployment_enabled"label="Raw Compose Deployment"helper="WARNING: Advanced use cases only. Your docker compose file will be deployed as-is. Nothing is modified by Coolify. You need to configure the proxy parts. More info in the <a href='https://coolify.io/docs/docker/compose#raw-docker-compose-deployment'>documentation.</a>"/>
<x-forms.inputhelper="You can specify one domain with path or more with comma. You can specify a port to bind the domain to.<br><br><span class='text-helper'>Example</span><br>- http://app.coolify.io, https://cloud.coolify.io/dashboard<br>- http://app.coolify.io/api/v3<br>- http://app.coolify.io:3000 -> app.coolify.io will point to port 3000 inside the container. "label="Domains for {{ str($serviceName)->headline() }}"id="parsedServiceDomains.{{$serviceName }}.domain"></x-forms.input>
<x-forms.inputplaceholder="https://lasthourhosting.org"id="application.fqdn"label="Domains"helper="You can specify one domain with path or more with comma. You can specify a port to bind the domain to.<br><br><span class='text-helper'>Example</span><br>- http://app.lasthourhosting.org, https://cloud.lasthourhosting.org/dashboard<br>- http://app.lasthourhosting.org/api/v3<br>- http://app.lasthourhosting.org:3000 -> app.lasthourhosting.org will point to port 3000 inside the container. "/>
<x-forms.inputid="application.docker_registry_image_tag"helper="If set, it will tag the built image with this tag too. <br><br>Example: If you set it to 'latest', it will push the image with the commit sha tag + with the latest tag."placeholder="Empty means latest will be used."label="Docker Image Tag"/>
@else
<x-forms.inputid="application.docker_registry_image_name"helper="Empty means it won't push the image to a docker registry."placeholder="Empty means it won't push the image to a docker registry."label="Docker Image"/>
<x-forms.inputid="application.docker_registry_image_tag"placeholder="Empty means only push commit sha tag."helper="If set, it will tag the built image with this tag too. <br><br>Example: If you set it to 'latest', it will push the image with the commit sha tag + with the latest tag."label="Docker Image Tag"/>
<x-forms.inputhelper="You can add custom docker run options that will be used when your container is started.<br>Note: Not all options are supported, as they could mess up Coolify's automation and could cause bad experience for users.<br><br>Check the <a class='underline dark:text-white' href='https://coolify.io/docs/knowledge-base/docker/custom-commands'>docs.</a>"placeholder="--cap-add SYS_ADMIN --device=/dev/fuse --security-opt apparmor:unconfined --ulimit nofile=1024:1024 --tmpfs /run:rw,noexec,nosuid,size=65536k"id="application.custom_docker_run_options"label="Custom Docker Options"/>
@else
@if($application->could_set_build_commands())
@if($application->build_pack==='nixpacks')
<divclass="flex flex-col gap-2 xl:flex-row">
<x-forms.inputhelper="If you modify this, you probably need to have a nixpacks.toml"id="application.install_command"label="Install Command"/>
<x-forms.inputhelper="If you modify this, you probably need to have a nixpacks.toml"id="application.build_command"label="Build Command"/>
<x-forms.inputhelper="If you modify this, you probably need to have a nixpacks.toml"id="application.start_command"label="Start Command"/>
<x-forms.inputx-bind:disabled="initLoadingCompose"placeholder="/"id="application.base_directory"label="Base Directory"helper="Directory to use as root. Useful for monorepos."/>
<x-forms.inputx-bind:disabled="initLoadingCompose"placeholder="/docker-compose.yaml"id="application.docker_compose_location"label="Docker Compose Location"helper="It is calculated together with the Base Directory:<br><span class='dark:text-warning'>{{ Str::start($application->base_directory . $application->docker_compose_location, '/') }}</span>"/>
</div>
<divclass="w-96">
<x-forms.checkboxinstantSaveid="application.settings.is_preserve_repository_enabled"label="Preserve Repository During Deployment"helper="Git repository (based on the base directory settings) will be copied to the deployment directory."/>
<x-forms.inputplaceholder="docker compose build"x-bind:disabled="initLoadingCompose"id="application.docker_compose_custom_build_command"helper="If you use this, you need to specify paths relatively and should use the same compose file in the custom command, otherwise the automatically configured labels / etc won't work.<br><br>So in your case, use: <span class='dark:text-warning'>docker compose -f .{{ Str::start($application->base_directory . $application->docker_compose_location, '/') }} build</span>"label="Custom Build Command"/>
<x-forms.inputplaceholder="docker compose up -d"x-bind:disabled="initLoadingCompose"id="application.docker_compose_custom_start_command"helper="If you use this, you need to specify paths relatively and should use the same compose file in the custom command, otherwise the automatically configured labels / etc won't work.<br><br>So in your case, use: <span class='dark:text-warning'>docker compose -f .{{ Str::start($application->base_directory . $application->docker_compose_location, '/') }} up -d</span>"label="Custom Start Command"/>
<x-forms.inputplaceholder="/Dockerfile"id="application.dockerfile_location"label="Dockerfile Location"helper="It is calculated together with the Base Directory:<br><span class='dark:text-warning'>{{ Str::start($application->base_directory . $application->dockerfile_location, '/') }}</span>"/>
@endif
@if($application->build_pack==='dockerfile')
<x-forms.inputid="application.dockerfile_target_build"label="Docker Build Stage Target"helper="Useful if you have multi-staged dockerfile."/>
<x-forms.textareahelper="Gitignore-style rules to filter Git based webhook deployments."placeholder="src/pages/**"id="application.watch_paths"label="Watch Paths"/>
<x-forms.inputhelper="You can add custom docker run options that will be used when your container is started.<br>Note: Not all options are supported, as they could mess up Coolify's automation and could cause bad experience for users.<br><br>Check the <a class='underline dark:text-white' href='https://coolify.io/docs/knowledge-base/docker/custom-commands'>docs.</a>"placeholder="--cap-add SYS_ADMIN --device=/dev/fuse --security-opt apparmor:unconfined --ulimit nofile=1024:1024 --tmpfs /run:rw,noexec,nosuid,size=65536k"id="application.custom_docker_run_options"label="Custom Docker Options"/>
<x-forms.checkboxhelper="Use a build server to build your application. You can configure your build server in the Server settings. This is experimental. For more info, check the <a href='https://coolify.io/docs/knowledge-base/server/build-server' class='underline' target='_blank'>documentation</a>."instantSaveid="application.settings.is_build_server_enabled"label="Use a Build Server? (experimental)"/>
<x-forms.checkboxinstantSaveid="application.settings.is_static"label="Is it a static site?"helper="If your application is a static site or the final build assets should be served as a static site, enable this."/>
<x-forms.textarearows="10"readonlyid="application.docker_compose_raw"label="Docker Compose Content (applicationId: {{$application->id }})"helper="You need to modify the docker compose file."monacoEditorLanguage="yaml"useMonacoEditor/>
@else
<x-forms.textarearows="10"readonlyid="application.docker_compose"label="Docker Compose Content"helper="You need to modify the docker compose file."monacoEditorLanguage="yaml"useMonacoEditor/>
@endif
<divclass="w-96">
<x-forms.checkboxlabel="Escape special characters in labels?"helper="By default, $ (and other chars) is escaped. So if you write $ in the labels, it will be saved as $$.<br><br>If you want to use env variables inside the labels, turn this off."id="application.settings.is_container_label_escape_enabled"instantSave></x-forms.checkbox>
<x-forms.checkboxlabel="Readonly labels"helper="If you know what are you doing, you can enable this to edit the labels directly. Coolify won't update labels automatically. <br><br>Be careful, it could break the proxy configuration after you restart the container."id="application.settings.is_container_label_readonly_enabled"instantSave></x-forms.checkbox>
<x-forms.inputplaceholder="3000,3001"id="application.ports_exposes"label="Ports Exposes"requiredhelper="A comma separated list of ports your application uses. The first port will be used as default healthcheck port if nothing defined in the Healthcheck menu. Be sure to set this correctly."/>
<x-forms.inputplaceholder="3000:3000"id="application.ports_mappings"label="Ports Mappings"helper="A comma separated list of ports you would like to map to the host system. Useful when you do not want to use domains.<br><br><span class='inline-block font-bold dark:text-warning'>Example:</span><br>3000:3000,3002:3002<br><br>Rolling update is not supported if you have a port mapped to the host."/>
<x-forms.checkboxlabel="Escape special characters in labels?"helper="By default, $ (and other chars) is escaped. So if you write $ in the labels, it will be saved as $$.<br><br>If you want to use env variables inside the labels, turn this off."id="application.settings.is_container_label_escape_enabled"instantSave></x-forms.checkbox>
<x-forms.checkboxlabel="Readonly labels"helper="If you know what are you doing, you can enable this to edit the labels directly. Last Hour Cloud won't update labels automatically. <br><br>Be careful, it could break the proxy configuration after you restart the container."id="application.settings.is_container_label_readonly_enabled"instantSave></x-forms.checkbox>
</div>
<x-modal-confirmationbuttonFullWidthaction="resetDefaultLabels"buttonTitle="Reset to Last Hour Cloud Generated Labels">
<x-forms.inputx-bind:disabled="initLoadingCompose"placeholder="php artisan migrate"id="application.pre_deployment_command"label="Pre-deployment "helper="An optional script or command to execute in the existing container before the deployment begins.<br>It is always executed with 'sh -c', so you do not need add it manually."/>
@if($application->build_pack==='dockercompose')
<x-forms.inputx-bind:disabled="initLoadingCompose"id="application.pre_deployment_command_container"label="Container Name"helper="The name of the container to execute within. You can leave it blank if your application only has one container."/>
@endif
</div>
<divclass="flex flex-col gap-2 xl:flex-row">
<x-forms.inputx-bind:disabled="initLoadingCompose"placeholder="php artisan migrate"id="application.post_deployment_command"label="Post-deployment "helper="An optional script or command to execute in the newly built container after the deployment completes.<br>It is always executed with 'sh -c', so you do not need add it manually."/>
@if($application->build_pack==='dockercompose')
<x-forms.inputx-bind:disabled="initLoadingCompose"id="application.post_deployment_command_container"label="Container Name"helper="The name of the container to execute within. You can leave it blank if your application only has one container."/>