Legacy Knowledge Base
Published Sep. 10, 2025

How to update and deploy only a single service with Liferay PaaS

Written By

Isaac Wilson

How To articles are not official guidelines or officially supported documentation. They are community-contributed content and may not always reflect the latest updates to Liferay DXP. We welcome your feedback to improve How To articles!

While we make every effort to ensure this Knowledge Base is accurate, it may not always reflect the most recent updates or official guidelines.We appreciate your understanding and encourage you to reach out with any feedback or concerns.

Legacy Article

You are viewing an article from our legacy "FastTrack" publication program, made available for informational purposes. Articles in this program were published without a requirement for independent editing or verification and are provided"as is" without guarantee.

Before using any information from this article, independently verify its suitability for your situation and project.
Note: please note that Liferay has renamed its Liferay Experience Could offerings to Liferay SaaS (formerly LXC) and Liferay PaaS (formerly LXC-SM).

Issue

  • Is there any way to deploy updates for only one Liferay PaaS service at a time? Only a minor configuration change is needed, and it would be helpful to not need to restart all services in the entire Liferay PaaS stack by creating and deploying a full new build.  

Environment

  • Liferay PaaS

Resolution

  • To deploy only specific services within a build, you can configure "deploy": false within the LCP.json for any services that you would like to exclude from a "low impact" deployment for a specific environment. You would then submit the change via a pull request as normal.
  • For example, when examining the liferay service's default LCP.json, the following is included:
      "environments": {
        "infra": {
          "deploy": false
        }
      }
    If you want to exclude the liferay service from being deployed to -prd for a build (so that all services deploy except liferay), you would add the following before submitting the PR: 
      "environments": {
        "infra": {
          "deploy": false
        }
        "prd": {
          "deploy": false
        }
      }

Additional Information

  • An additional option for deploying a single service is available using the lcp deploy command within the Liferay PaaS Command-line Tool. Full documentation is still being created for this tool, so this option should only be used with caution and at your team's discretion (as it will skip GitHub entirely, you will not be able to see a pull request for this deployment, it may lead to syncing issues if moving back and forth between deployment types, and it will not go through approval processes you may have configured in GitHub).
  • When using the version 3.x.x workspace, to deploy a single service using this command (for example, webserver), here are the steps:
    1. Navigate to your Liferay PaaS repository on your local machine
    2. Add the configuration change you will be implementing
    3. Run ./gradlew distLiferayCloud
    4. You should now see a build folder
    5. Navigate to build/lcp/webserver
    6. Run lcp deploy (you may need run lcp login to authenticate first)
    7. Choose the environment you'd like to deploy to

      After these steps, a new deployment will have been started for only the webserver

  • When using the version 4.x.x workspace, to deploy a single service using this command (for example, webserver; see note about liferay below), here are the steps:
    1. Navigate to your Liferay PaaS repository on your local machine
    2. Add the configuration change you will be implementing
    3. Navigate in a terminal to the directory of the specific service being deployed, for example:  [repository_home]/webserver
    4. Run lcp deploy (you may need run lcp login to authenticate first)
    5. Choose the environment you'd like to deploy to

      After these steps, a new deployment will have been started for only the webserver

  • The exception to this (when using the version 4.x.x workspace) is for the liferay service, which has the following steps:
    1. Navigate to your Liferay PaaS repository on your local machine
    2. Add the configuration change you will be implementing
    3. Navigate in a terminal to the liferay directory[repository_home]/liferay
    4. Run ./gradlew clean deploy createDockerfile
    5. Run cp LCP.json build/docker
    6. Navigate to build/docker
    7. Run lcp deploy (you may need run lcp login to authenticate first)
    8. Choose the environment you'd like to deploy to

      Note: you will see a "Dockerfile does not exist." error if steps 4 or 5 are skipped.
      After these steps, a new deployment will have been started for only liferay
       
  • More information regarding this topic can be found in the following articles:
Did this article resolve your issue ?

Legacy Knowledge Base