# Marketplace

{% hint style="info" %}
You can only install and update plugins from the Marketplace in SonarQube Community Edition. With commercial editions, you need manually install and update your plugins. See [install-a-plugin](https://docs.sonarsource.com/sonarqube-server/8.9/setup-and-upgrade/install-a-plugin "mention") for more information.
{% endhint %}

Administrators can access the Marketplace via **Administration > Marketplace**. The Marketplace is the place for keeping the pieces of the SonarQube platform up to date. It lets you:

See

* The currently installed SonarQube Edition
* Which plugins are installed
* Whether plugin updates are available
* Which other plugins are compatible with your version of SonarQube

Discover

* Which other Editions are available, to enable more features

Install

* New plugins
* Plugin updates

To view/install plugin updates, your SonarQube server needs internet access. Installations require the platform to be restarted before they take effect.

## Pending operations <a href="#pending-operations" id="pending-operations"></a>

When you perform an action in the Marketplace (install, update, or uninstall a plugin), a yellow banner appears at the top of the page showing pending operations that will be executed once SonarQube is restarted. Pending operations can be canceled until the server is restarted.

## Restart SonarQube <a href="#restart-sonarqube" id="restart-sonarqube"></a>

Restarting SonarQube can be done manually from the command line by running `sonar.sh restart` or directly from the UI:

* In the **Update Center** when you have pending changes, the restart button will be displayed in the yellow banner.
* In the **System Info** page at any time.

## Manual updates <a href="#manual-updates" id="manual-updates"></a>

If you’re using a commercial edition or your server doesn’t have internet access, you won’t be able to rely on the Marketplace for plugins, and you will have to handle plugin installations and upgrades manually.

To see what plugins are available and which version of a plugin is appropriate for your server, use the [plugin-version-matrix](https://docs.sonarsource.com/sonarqube-server/8.9/instance-administration/plugin-version-matrix "mention"), which is kept up to date with current plugin availability and compatibility.

To install a plugin, simply download it using the manual download link on the plugin documentation page, place it in `<SONARQUBE_HOME>/extensions/plugins`, and restart the server.

### Stopping the Marketplace from searching for plugin updates <a href="#stopping-the-marketplace-from-searching-for-plugin-updates" id="stopping-the-marketplace-from-searching-for-plugin-updates"></a>

Your SonarQube server needs internet access for the Marketplace to search for plugin updates. If your server doesn’t have internet access, you may get errors in your logs when the Marketplace tries to search for new plugins. You can stop this by updating `sonar.updatecenter.activate` in `<SONARQUBE_HOME>/conf/sonar.properties`.

## Which URLs does the Marketplace connect to? <a href="#which-url-does-the-marketplace-connect-to" id="which-url-does-the-marketplace-connect-to"></a>

The SonarQube Marketplace connects to <https://update.sonarsource.org/> to get the list of plugins. Most of the referenced plugins are downloaded from:

* <https://binaries.sonarsource.com/>
* <https://github.com/>

If you are getting this error in the logs when trying to use the Marketplace:

```css-79elbk
java.io.IOException: Unable to tunnel through proxy. Proxy returns "HTTP/1.1 407 Proxy Authentication Required
```

… you probably upgraded your Java8 installation with an update greater than 111. To fix that, update *$SONARQUBE*HOME/conf/sonar.properties\` like this:

```css-79elbk
sonar.web.javaOpts=-Xmx512m -Xms128m -XX:+HeapDumpOnOutOfMemoryError -Djdk.http.auth.tunneling.disabledSchemes=""
```

Reference: <http://www.oracle.com/technetwork/java/javase/8u111-relnotes-3124969.html>

## Using the Marketplace behind a proxy <a href="#using-the-marketplace-behind-a-proxy" id="using-the-marketplace-behind-a-proxy"></a>

Marketplace uses HTTP(S) connections to external servers to provide these services. If SonarQube is located behind a proxy, additional information must be provided in `<SONARQUBE_HOME>/conf/sonar.properties`:

```css-79elbk
http.proxyHost=<your.proxy.host>
http.proxyPort=<yout.proxy.port>

#If proxy authentication is required
http.proxyUser=<your.proxy.user>
http.proxyPassword=<your.proxy.password> 
```

Note: the same properties can be used in the `https.*` form for HTTPS connections.
