Em 15 de setembro de 2026, todos os ambientes do Cloud Composer 1 e da versão 2.0.x do Cloud Composer 2 vão atingir o fim da vida útil planejado e não poderão mais ser usados. Recomendamos planejar a migração para o Cloud Composer 3.
Nesta página, você aprende a instalar plug-ins personalizados no ambiente do Cloud Composer.
O gerenciador de plug-ins do Apache Airflow permite que você crie operadores, hooks, sensores ou interfaces internos personalizados do Apache Airflow.
Para mais informações, consulte plug-ins personalizados (em inglês) na documentação do Airflow.
Sua conta precisa ter um papel que permita a visualização e a
modificação do conteúdo do bucket do ambiente.
Este método de instalação se aplica apenas aos plug-ins do Airflow (em inglês). Por exemplo, não é possível usar esse método para instalar módulos comuns do Python ou outras bibliotecas.
LOCATION pela região em que o ambiente está localizado;
PATH_TO_LOCAL_FILE pelo caminho do arquivo para upload;
(Opcional) PATH_IN_SUBFOLDER pelo caminho da subpasta. Use
o argumento --destination para fazer upload de um plug-in para uma subpasta na
pasta plugins. Caso contrário, omita o argumento --destination.
Ver a lista de plug-ins
Console
No console Google Cloud , acesse a página Ambientes.
LOCATION pela região em que o ambiente está localizado;
PATH_TO_LOCAL_DESTINATION pelo destino do arquivo salvo.
(Opcional) --source é uma opção para fazer o download de apenas um plug-in;
PATH_IN_FOLDER é o caminho da pasta.
Resolver problemas de plug-in
Um plug-in recém-enviado não está visível na interface do Airflow
Se você usa o controle de acesso à interface do Airflow, o plug-in
enviado recentemente pode não aparecer na interface do Airflow. Para resolver esse problema, peça ao administrador da interface do Airflow para configurar o acesso ao plug-in recém-enviado ou atribua a si mesmo a função Admin na interface do Airflow.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Informações incorretas ou exemplo de código","incorrectInformationOrSampleCode","thumb-down"],["Não contém as informações/amostras de que eu preciso","missingTheInformationSamplesINeed","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 2025-09-04 UTC."],[[["\u003cp\u003eCloud Composer environments utilize a \u003ccode\u003eplugins\u003c/code\u003e folder within their associated Cloud Storage bucket for the installation of custom Apache Airflow plugins.\u003c/p\u003e\n"],["\u003cp\u003eInstalling a plugin requires copying the plugin code to the \u003ccode\u003eplugins\u003c/code\u003e folder via either the Google Cloud console or the \u003ccode\u003egcloud\u003c/code\u003e command-line tool.\u003c/p\u003e\n"],["\u003cp\u003ePlugins are not reloaded after they are initially loaded, except for UI plugins in the web server, meaning you may need to manually restart the web server or scheduler process.\u003c/p\u003e\n"],["\u003cp\u003ePlugins can be removed from a Cloud Composer environment by deleting the corresponding plugin files from the \u003ccode\u003eplugins\u003c/code\u003e folder, and they can also be downloaded locally using the \u003ccode\u003egcloud\u003c/code\u003e command or the Google Cloud Console.\u003c/p\u003e\n"],["\u003cp\u003eTo resolve the visibility of new plugins in the Airflow UI, it is necessary to either configure the access to them by an admin or assign yourself the \u003ccode\u003eAdmin\u003c/code\u003e role in Airflow UI if you are using Airflow UI Access Control.\u003c/p\u003e\n"]]],[],null,["# Install custom plugins\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\n[Cloud Composer 3](/composer/docs/composer-3/install-plugins \"View this page for Cloud Composer 3\") \\| **Cloud Composer 2** \\| [Cloud Composer 1](/composer/docs/composer-1/install-plugins \"View this page for Cloud Composer 1\")\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\nThis page describes how to install custom plugins in your Cloud Composer\nenvironment.\n\nApache Airflow's plugin manager allows you to write custom in-house\nApache Airflow operators, hooks, sensors, or interfaces.\nFor more information, see [custom plugins](https://airflow.apache.org/docs/apache-airflow/stable/authoring-and-scheduling/plugins.html)\nin the Airflow documentation.\n\nAbout custom plugins\n--------------------\n\nWhen you create an environment, Cloud Composer\n[creates a Cloud Storage bucket](/composer/docs/composer-2/cloud-storage) and associates this\nbucket with your environment. You use the `plugins` folder in your\nenvironment's bucket to install custom plugins.\n\nBefore you begin\n----------------\n\n- Your account [must have a role](/composer/docs/composer-2/access-control#user-account) that allows viewing and modifying your environment's bucket contents.\n- This installation method applies only to [Airflow plugins](https://airflow.apache.org/docs/apache-airflow/stable/authoring-and-scheduling/plugins.html). For example, you cannot use this method to install common Python modules or other libraries.\n- Plugins must conform to the [Airflow plugins template](https://airflow.apache.org/docs/apache-airflow/stable/authoring-and-scheduling/plugins.html#example) guidelines.\n\nInstall a plugin\n----------------\n\nTo install a custom plugin into your Cloud Composer environment,\ncopy the plugin code to the `plugins` folder in your environment's bucket.\n| **Note:** After the plugins are loaded, they are never reloaded, except the UI plugins in the web server. You might need to restart the web server or the scheduler processes manually. Otherwise, a scheduler only restarts after the [`[scheduler]num_runs`](https://airflow.apache.org/docs/apache-airflow/stable/configurations-ref.html#num-runs), which is set to 5000 by default.\n\nTo install a plugin: \n\n### Console\n\n1. In the Google Cloud console, go to the **Environments** page.\n\n [Go to Environments](https://console.cloud.google.com/composer/environments)\n2. Find your environment and follow the **DAGs** link.\n\n3. Go one folder level up, then navigate to the `plugins/` folder.\n\n4. Upload your plugin files. For more information about uploading objects,\n see [Uploading objects](/storage/docs/uploading-objects).\n\n### gcloud\n\nUse the following `gcloud` command: \n\n gcloud composer environments storage plugins import \\\n --environment \u003cvar translate=\"no\"\u003eENVIRONMENT_NAME\u003c/var\u003e \\\n --location \u003cvar translate=\"no\"\u003eLOCATION\u003c/var\u003e \\\n --source \u003cvar translate=\"no\"\u003ePATH_TO_LOCAL_FILE\u003c/var\u003e \\\n --destination \u003cvar translate=\"no\"\u003ePATH_IN_SUBFOLDER\u003c/var\u003e\n\nReplace:\n\n- `ENVIRONMENT_NAME` with the name of the environment.\n- `LOCATION` with the region where the environment is located.\n- `PATH_TO_LOCAL_FILE` with the path of the file to upload.\n- (Optional) `PATH_IN_SUBFOLDER` with the subfolder path. Use the `--destination` argument to upload a plugin to a subfolder in the `plugins` folder. Otherwise, omit the `--destination` argument.\n\nView the list of plugins\n------------------------\n\n### Console\n\n1. In the Google Cloud console, go to the **Environments** page.\n\n [Go to Environments](https://console.cloud.google.com/composer/environments)\n2. Find your environment and follow the **DAGs** link.\n\n3. Go one folder level up, then navigate to the `plugins/` folder.\n\n4. View the plugin files.\n\n### gcloud\n\nUse the following `gcloud` command: \n\n gcloud composer environments storage plugins list \\\n --environment \u003cvar translate=\"no\"\u003eENVIRONMENT_NAME\u003c/var\u003e \\\n --location \u003cvar translate=\"no\"\u003eLOCATION\u003c/var\u003e\n\nReplace:\n\n- `ENVIRONMENT_NAME` with the name of the environment.\n- `LOCATION` with the region where the environment is located.\n\nDelete a plugin\n---------------\n\nTo delete a plugin from your Cloud Composer environment,\ndelete the plugin code from the `plugins` folder in the environment's bucket.\n\nTo delete a plugin: \n\n### Console\n\n1. In the Google Cloud console, go to the **Environments** page.\n\n [Go to Environments](https://console.cloud.google.com/composer/environments)\n2. Find your environment and follow the **DAGs** link.\n\n3. Go one folder level up, then navigate to the `plugins/` folder.\n\n4. Delete the plugin files. For more information about deleting objects,\n see [Deleting objects](/storage/docs/deleting-objects).\n\n### gcloud\n\nUse the following `gcloud` command: \n\n gcloud composer environments storage plugins delete \\\n --environment \u003cvar translate=\"no\"\u003eENVIRONMENT_NAME\u003c/var\u003e \\\n --location \u003cvar translate=\"no\"\u003eLOCATION\u003c/var\u003e \\\n \u003cvar translate=\"no\"\u003ePLUGIN_TO_DELETE\u003c/var\u003e\n\nDownload plugins\n----------------\n\nTo download plugins, choose an option: \n\n### Console\n\n1. In the Google Cloud console, go to the **Environments** page.\n\n [Go to Environments](https://console.cloud.google.com/composer/environments)\n2. Find your environment and follow the **DAGs** link.\n\n3. Go one folder level up, then navigate to the `plugins/` folder.\n\n4. Download the plugin files. For more information about deleting objects,\n see [Downloading objects](/storage/docs/downloading-objects).\n\n### gcloud\n\nUse the following `gcloud` command: \n\n gcloud composer environments storage plugins export \\\n --environment \u003cvar translate=\"no\"\u003eENVIRONMENT_NAME\u003c/var\u003e \\\n --location \u003cvar translate=\"no\"\u003eLOCATION\u003c/var\u003e \\\n --destination \u003cvar translate=\"no\"\u003ePATH_TO_LOCAL_DESTINATION\u003c/var\u003e \\\n --source \u003cvar translate=\"no\"\u003ePATH_IN_FOLDER\u003c/var\u003e\n\nReplace:\n\n- `ENVIRONMENT_NAME` with the name of the environment.\n- `LOCATION` with the region where the environment is located.\n- `PATH_TO_LOCAL_DESTINATION` with the destination for downloaded file.\n- (Optional) `--source` is an option to download only one plugin. `PATH_IN_FOLDER` is the folder path.\n\nTroubleshoot plugin issues\n--------------------------\n\n### A newly-uploaded plugin is not visible in Airflow UI\n\nIf you use [Airflow UI Access Control](/composer/docs/composer-2/airflow-rbac) then the newly\nuploaded plugin might not be visible in Airflow UI. To address this issue, ask\nAirflow UI Administrator to configure access to the newly uploaded plugin or\nassign yourself the `Admin` role in Airflow UI.\n\nWhat's next\n-----------\n\n- [Data stored in Cloud Storage](/composer/docs/composer-2/cloud-storage)\n- [Manage DAGs](/composer/docs/composer-2/manage-dags)"]]