Develop on
Alibaba Cloud
with JetBrains Tools

Alibaba Cloud Toolkit

Alibaba Cloud ECS
Alibaba Container Service
Alibaba Cloud ROS
Alibaba Cloud RDS
Alibaba Cloud Function Compute
The Alibaba Cloud Toolkit brings the cloud to your IDE. Start developing ECS, Container Service, and Function Compute services quickly.
Get confident with your code

Get confident with your code

JetBrains IDE has built-in language parsers and inspection tools that can help you write your code properly. With the Alibaba Cloud Toolkit, potential problems in your code are automatically detected using Alibaba Java Coding Guidelines.

Access your instances in different regions

After configuring your access key and secret key, you can get or search ECS and RDS instances in different regions in the Cloud View tool window. Furthermore, you can view instance properties, run diagnostics, connect to your instance, upload files through the built-in terminal using SSH, and these operations can all be done easily with one click.

Access your instances in different regions
Deploy applications to VMs, containers, or serverless

Deploy applications to VMs, containers, or serverless

Alibaba Cloud Toolkit is tightly integrated with all of JetBrains IntelliJ-based IDEs. No matter what programming language you use, you can deploy your application through the Run Configuration dialog. It supports using Maven or Gradle to build your applications before deployment. Also, it supports running a post-deployment command when the task has finished. If you prefer using a serverless solution, you can develop a Function Compute project in your JetBrains IDE and upload the code to Alibaba Cloud.

Manage infrastructure

Alibaba Cloud Resource Orchestration Service (ROS) is an Infrastructure as Code (IaC) solution on Alibaba Cloud. You can edit ROS templates using JSON or YAML format in your JetBrains IDE. You can download or upload a template through the Alibaba Cloud ROS Templates tool window, and then execute it on the Alibaba Cloud platform.

Manage infrastructure

Achieve Dev-Prod Parity

Whether your application is deployed on ECS, Container Service, or Function Compute, we have the tools to assist you in developing in these environments. JetBrains IDEs will help you get the code to your development environment, and debug your code running in place.

Alibaba Cloud ECS

For Virtual Machines

Every JetBrains IDE can deploy code and artifacts using SCP, and open an SSH terminal. Complex SSH configurations with bastion hosts are supported and can be configured using the SSH config file (even on Windows).

You may be using Vagrant to help automate your VM processes. Vagrant is supported in all JetBrains IDEs, and you can connect to Vagrant-configured VMs from the IDE without further configuration.

Alibaba Cloud Container Service

For Containers

All JetBrains IDEs enable you to build and run both Docker Containers and Docker Compose projects. Our Docker support makes editing Dockerfiles and Compose YAML files a breeze.

Using Kubernetes? Although Kubernetes makes deployment much easier, it requires complex YAML files for configuration. The JetBrains Kubernetes plugin helps you with this: it generates snippets, enables you to navigate within your configuration, and offers inspections to help you write valid configurations.

Remote Interpreters

If you’re developing code in Python, Node.js, PHP, or Ruby, you can use the JetBrains IDE’s remote interpreter feature. Whether you’re connecting to a VM or a Docker container, you can configure a remote interpreter to use your remote machine as the execution environment for your project. After you have configured this, all run configurations will be executed on the remote machine, while still giving you the experience you’re used to from local development.

When you configure a remote interpreter, your IDE will scan the environment of the remote machine, making sure that you get accurate code completion. To further streamline the development experience, unit tests will be run remotely.

The Python console, IRB, and Rails console will run on the remote machine when a remote interpreter is configured, letting you prototype your code in the same environment where it will run.

Debug Remotely

With most run configurations, debugging is supported without additional configuration. For more complex configurations, for example, if you’re testing a toolchain that generates VM images, you might not be able to start your code from the IDE. In these cases, you can use the remote debugging capability of JetBrains IDEs to connect to code which is already running.

Development in the following languages is supported both in the specific IDEs for those languages, and in IntelliJ IDEA Ultimate with the corresponding language plugin. JavaScript support is available in all the commercial versions of JetBrains IDEs.

About languages

Java

Configure Java to start with debugging enabled, either with a command-line option or an environment variable, then attach IntelliJ IDEA’s debugger.

Python

Install pydevd-pycharm package and follow the instruction to set up the run/debug configuration. Then start the debug server in PyCharm and wait for the script to connect.

Node.js

Start your Node.js app with the --inspect flag, and then attach WebStorm’s debugger.

GDB

Start your application with gdbserver, and then connect using CLion.

Go

Start your application with delve, and then connect using GoLand.

PHP

Configure Xdebug just like you would locally. The web server will need to be able to connect to the machine running PhpStorm. Consider an SSH tunnel.

Ruby

Start your application with rdebug, and then connect using Rubymine.

Analyze Issues Faster

The complexity found in today’s cloud environments sometimes makes it hard to reproduce certain issues locally. That’s why we’ve added the ability to analyze stack traces that you get from your logs*. Simply copy-paste the stack trace into the IDE, and you can use the power of your JetBrains IDE to quickly navigate to the relevant parts of your application.

*Only in Java, Python, PHP, .NET, Ruby, and Node.js

If you’re developing a multi-threaded Java application, be sure to check out the thread dump analysis tool in IntelliJ IDEA

Analyze Issues Faster

Integrate with Your Data

ApsaraDB RDS for MySQL
ApsaraDB RDS for PostgreSQL
ApsaraDB RDS for SQL Server
ApsaraDB RDS for MariaDB TX
ApsaraDB for MongoDB
ApsaraDB for Cassandra

It’s hard to make an application without a database, which is why JetBrains offers DataGrip, our SQL IDE. In addition to being a standalone product, its database features are also integrated into most of our IDEs*.

*All paid IDEs except WebStorm

To make development for remote environments easier, DataGrip comes with support for SSH tunnels out of the box. To connect to your staging environment’s database, just have DataGrip connect through your bastion host.

JetBrains DataGrip

JetBrains DataGrip

SQL is a powerful language, so why not use a powerful tool? JetBrains DataGrip brings powerful code insight and completion to SQL. DataGrip makes connecting to your database and exploring your data easier than ever.

DataGrip makes it easy to connect to your Alibaba Cloud ApsaraDB for MySQL, PostgreSQL, Microsoft SQL Server, MariaDB, and Oracle. Rather than being made for a single RDBMS, DataGrip also supports NoSQL databases like MongoDB and Cassandra.

Database Features in Your IDE

Database Features in Your IDE

See your data while you develop: by having DataGrip integrated in your JetBrains IDE you gain not just insight into your data, but also industry-leading SQL completion that actually knows your data. All JetBrains IDEs with database integration offer you schema-aware SQL completions whenever you’re writing a query within your code.

All your RDS at a glance

All your RDS at a glance

With Alibaba Cloud Toolkit plugin, you can view/search all the RDS instances that you create in different regions. Instance properties can be retrieved inside the panel. You can execute the query after you login with your credentials.


Deploy Your Application

Most teams use some type of continuous integration and/or continuous deployment (CI/CD). JetBrains TeamCity is a CI/CD server that was made for today’s complex environment.

Container Support

Of course, TeamCity can build and push your Docker images based on the Dockerfile in your repo. Additionally, TeamCity can wrap build steps in a Docker container. For example, rather than running a Gradle build step directly on your build agent, you can configure TeamCity to create ephemeral Docker containers within which Gradle will be executed.

Container Support

Cloud Native

JetBrains TeamCity makes it easy to build your code in the cloud. Whether you’re fully in the cloud or have a hybrid between on-premises and cloud-deployed machines, TeamCity can handle the complexity for you.

Build and Deploy

Get powerful continuous integration and continuous deployment out of the box with TeamCity.


Code Your Infrastructure

You can now configure your infrastructure with code, so why not use a world-class IDE for coding your infrastructure? With the HashiCorp Configuration Language (HCL) plugin you can use JetBrains IDE features like Ctrl-Click to go to definition in your infrastructure code. Alibaba Cloud is a Terraform provider, so you can use it to build your infrastructure with ease.

In addition to basic support for Terraform syntax, the plugin has deeper integration with HashiCorp TerraForm. Code completion is offered for TerraForm methods, and various inspections help to make sure that your infrastructure configuration is valid.

Code Your Infrastructure

Configuration Management

Whether you’re using Chef, Puppet, or Ansible, there’s a plugin available for you. The JetBrains Puppet plugin provides you with high-quality code completion, refactoring, and inspections for your IDE. Plugins are also available for code completion in Chef cookbooks and Ansible playbooks.

Get Started Now

Develop

IntelliJ IDEA Ultimate makes it easy to develop in any language, and even multiple languages in one project.

Build and Deploy

Get powerful continuous integration and continuous deployment out of the box with TeamCity.

Developing in
another language?