Manual Installation

This workflow describes how to manually install Posit Connect using .rpm or .deb files.

Prerequisites

Note

Most installations use multiple versions of R and Python.

Step 1. Download and install

Note

Download and/or use of Posit Connect is governed under the terms of the Posit End User License Agreement. By downloading you agree to the terms posted there.

  • Run the following to download and install Connect:
curl -O https://cdn.rstudio.com/connect/2023.09/rstudio-connect-2023.09.0.el9.x86_64.rpm
sudo yum install rstudio-connect-2023.09.0.el9.x86_64.rpm
curl -O https://cdn.rstudio.com/connect/2023.09/rstudio-connect-2023.09.0.el8.x86_64.rpm
sudo yum install rstudio-connect-2023.09.0.el8.x86_64.rpm
curl -O https://cdn.rstudio.com/connect/2023.09/rstudio-connect-2023.09.0.el7.x86_64.rpm
sudo yum install rstudio-connect-2023.09.0.el7.x86_64.rpm
curl -O https://cdn.rstudio.com/connect/2023.09/rstudio-connect-2023.09.0.amazonlinux2.x86_64.rpm
sudo yum install rstudio-connect-2023.09.0.amazonlinux2.x86_64.rpm
sudo apt-get install gdebi-core
curl -O https://cdn.rstudio.com/connect/2023.09/rstudio-connect_2023.09.0~ubuntu22_amd64.deb
sudo gdebi rstudio-connect_2023.09.0~ubuntu22_amd64.deb
sudo apt-get install gdebi-core
curl -O https://cdn.rstudio.com/connect/2023.09/rstudio-connect_2023.09.0~ubuntu20_amd64.deb
sudo gdebi rstudio-connect_2023.09.0~ubuntu20_amd64.deb
curl -O https://cdn.rstudio.com/connect/2023.09/rstudio-connect-2023.09.0.sles15.x86_64.rpm
sudo zypper install rstudio-connect-2023.09.0.sles15.x86_64.rpm
  • Verify the installation by ensuring that the service is running:

    Terminal
    $ sudo systemctl status rstudio-connect

Package validation

Optionally, you might want to validate package signatures for your distribution:

Red Hat/CentOS/Amazon Linux 2

Package Validation

The Connect installer is signed with a key belonging to Posit, PBC.

For product builds released after 7/25/23 (including new and patched builds), use the Post 7/25/2023 key. For builds released prior to 7/25/23, use the Pre 7/25/2023 key.

We have two ways to obtain the key:

  • Obtain the key from our website and save it into a file (e.g., posit.key), or

  • Obtain the key from the GnuPG keyserver:

    gpg --keyserver keys.openpgp.org --search-keys 51C0B5BB19F92D60
    gpg --armor --export 51C0B5BB19F92D60 > posit.key
    gpg --keyserver keys.openpgp.org --search-keys 3F32EE77E331692F
    gpg --armor --export 3F32EE77E331692F > posit.key
  • Once you have obtained the key, you need to import it into the set of keys RPM uses to validate package signatures, after which you can validate the package signature using the rpm command:

    rpm --import posit.key
    rpm -K rstudio-connect-2023.09.0.el9.x86_64.rpm
    rpm --import posit.key
    rpm -K rstudio-connect-2023.09.0.el8.x86_64.rpm
    rpm --import posit.key
    rpm -K rstudio-connect-2023.09.0.el7.x86_64.rpm
    rpm --import posit.key
    rpm -K rstudio-connect-2023.09.0.amazonlinux2.x86_64.rpm=

SUSE 15 SP4/openSUSE 15.4

Package Validation

The Connect installer is signed with a key belonging to Posit, PBC.

For product builds released after 7/25/23 (including new and patched builds), use the Post 7/25/2023 key. For builds released prior to 7/25/23, use the Pre 7/25/2023 key.

We have two ways to obtain the key:

  • Obtain the key from our website and save it into a file (e.g., posit.key), or

  • Obtain the key from the GnuPG keyserver:

    gpg --keyserver keys.openpgp.org --search-keys 51C0B5BB19F92D60
    gpg --armor --export 51C0B5BB19F92D60 > posit.key
    gpg --keyserver keys.openpgp.org --search-keys 3F32EE77E331692F
    gpg --armor --export 3F32EE77E331692F > posit.key
  • Once you have obtained the key, you need to import it into the set of keys RPM uses to validate package signatures, after which you can validate the package signature using the rpm command:

    Terminal
    rpm --import posit.key
    
    # Validate installer
    rpm -K rstudio-connect-2023.09.0.sles15.x86_64.rpm

Ubuntu

Package Validation

The Connect installer is signed with a key belonging to Posit, PBC.

For product builds released after 7/25/23 (including new and patched builds), use the Post 7/25/2023 key. For builds released prior to 7/25/23, use the Pre 7/25/2023 key.

We have two ways to obtain the key:

  • Obtain the key from our website and save it into a file (e.g., posit.key), or

  • Obtain the key from the GnuPG keyserver:

    gpg --keyserver keys.openpgp.org --search-keys 51C0B5BB19F92D60
    gpg --armor --export 51C0B5BB19F92D60 > posit.key
    gpg --keyserver keys.openpgp.org --search-keys 3F32EE77E331692F
    gpg --armor --export 3F32EE77E331692F > posit.key
  • Once you have obtained the key, you can validate the .deb file as follows:

    dpkg-sig --verify rstudio-connect_2023.09.0~ubuntu22_amd64.deb
    dpkg-sig --verify rstudio-connect_2023.09.0~ubuntu20_amd64.deb

System dependencies for R packages

Optionally, you might want to install system dependencies for your distribution. Make sure to select the correct operating system for your installation of Connect.

R packages typically rely on a set of system-level dependencies. To that ensure publishers can deploy content without content failures we recommend installing the following system dependencies.

Note

Depending on your user permissions, you might need to add sudo to the installation commands listed below.

rpm -q epel-release || dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

if ! subscription-manager repos --enable codeready-builder-for-rhel-8-x86_64-rpms; then
  # add the codeready-builder repository
  dnf install -y dnf-plugins-core
  dnf config-manager --set-enabled "codeready-builder-for-rhel-8-*-rpms" || true
fi

dnf install -y tcl tk tk-devel java-1.8.0-openjdk-devel libxml2-devel openssl-devel freetype-devel fribidi-devel harfbuzz-devel git make fontconfig-devel cmake libsodium-devel cairo-devel libpng-devel libjpeg-turbo-devel mariadb-devel unixODBC-devel libicu-devel libtiff-devel zlib-devel libcurl-devel libgit2-devel libssh2 udunits2-devel perl gdal-devel gdal sqlite-devel proj-devel ImageMagick ImageMagick-c++ geos-devel mesa-libGLU-devel mesa-libGL-devel glpk-devel gmp-devel
rpm -q epel-release || yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

if ! subscription-manager repos --enable "rhel-*-optional-rpms"; then
  # enable RHEL optional RPMs
  yum install -y yum-utils
  yum-config-manager --enable "rhel-*-optional-rpms" || true
fi

yum install -y tcl tk tk-devel java-1.8.0-openjdk-devel libxml2-devel openssl-devel freetype-devel fribidi-devel harfbuzz-devel git make fontconfig-devel cmake cmake3 libsodium-devel cairo-devel libpng-devel libjpeg-turbo-devel mariadb-devel unixODBC-devel libicu-devel libtiff-devel zlib-devel libcurl-devel libgit2-devel libssh2 udunits2-devel perl gdal-devel gdal proj-devel proj-epsg ImageMagick ImageMagick-c++ geos-devel sqlite-devel mesa-libGLU-devel mesa-libGL-devel v8-devel glpk-devel gmp-devel
dnf install -y dnf-plugins-core
dnf config-manager --set-enabled powertools
dnf install -y epel-release
dnf install -y tcl tk tk-devel java-1.8.0-openjdk-devel libxml2-devel openssl-devel freetype-devel fribidi-devel harfbuzz-devel git make fontconfig-devel cmake libsodium-devel cairo-devel libpng-devel libjpeg-turbo-devel mariadb-devel unixODBC-devel libicu-devel libtiff-devel zlib-devel libcurl-devel libgit2-devel udunits2-devel perl   sqlite-devel proj-devel ImageMagick ImageMagick-c++-devel geos-devel mesa-libGLU-devel mesa-libGL-devel glpk-devel gmp-devel
yum install -y epel-release
yum install -y tcl tk tk-devel java-1.8.0-openjdk-devel libxml2-devel openssl-devel freetype-devel fribidi-devel harfbuzz-devel git make fontconfig-devel cmake cmake3 libsodium-devel cairo-devel libpng-devel libjpeg-turbo-devel mariadb-devel unixODBC-devel libicu-devel libtiff-devel zlib-devel libcurl-devel libgit2-devel libssh2-devel udunits2-devel perl gdal-devel gdal proj-devel proj-epsg ImageMagick ImageMagick-c++-devel geos-devel sqlite-devel mesa-libGLU-devel mesa-libGL-devel v8-devel glpk-devel gmp-devel
apt install -y tcl tk tk-dev tk-table default-jdk libxml2-dev libssl-dev libfreetype6-dev libfribidi-dev libharfbuzz-dev git make libfontconfig1-dev cmake libsodium-dev libcairo2-dev libpng-dev libjpeg-dev libmysqlclient-dev unixodbc-dev libicu-dev libtiff-dev zlib1g-dev libcurl4-openssl-dev libssh2-1-dev libudunits2-dev perl libgdal-dev gdal-bin libproj-dev python3 imagemagick libmagick++-dev gsfonts libgeos-dev libsqlite3-dev libglu1-mesa-dev libgl1-mesa-dev libnode-dev libglpk-dev libgmp3-dev
apt install -y tcl tk tk-dev tk-table default-jdk libxml2-dev libssl-dev libfreetype6-dev libfribidi-dev libharfbuzz-dev git make libfontconfig1-dev cmake libsodium-dev libcairo2-dev libpng-dev libjpeg-dev libmysqlclient-dev unixodbc-dev libicu-dev libtiff-dev zlib1g-dev libcurl4-openssl-dev libssh2-1-dev libudunits2-dev perl libgdal-dev gdal-bin libproj-dev python3 imagemagick libmagick++-dev gsfonts libgeos-dev libsqlite3-dev libglu1-mesa-dev libgl1-mesa-dev libnode-dev libglpk-dev libgmp3-dev
zypper install -y tcl tk tk-devel libxml2-devel libopenssl-devel freetype2-devel git make fontconfig-devel cmake cairo-devel libpng16-compat-devel libjpeg8-devel unixODBC-devel libtiff-devel zlib-devel libcurl-devel libssh2-devel perl ImageMagick ImageMagick-devel libMagick++-devel sqlite3-devel glu-devel Mesa-libGL-devel gmp-devel

If you are using Posit Package Manager, you can view these install commands per R-package on the setup page for your repository. If you are not using Package Manager, you can access these commands here.

Step 2. Verify and activate your license

  • Verify the status of your license and that your evaluation license is active by running the following command:

    Terminal
    sudo /opt/rstudio-connect/bin/license-manager status
  • If you already have a license key, then follow one of the license activation procedures:

    • Online activation: If your server is in an online environment and you already have the license key, then activate the license using the following command (the is the license key that was provided to you):

      Terminal
      sudo /opt/rstudio-connect/bin/license-manager activate <LICENSE-KEY>
    • Offline activation: If you are working in an offline environment, then refer to the License Server Offline Activation section.

    • Floating license: If your server is up and running and you need to configure Connect to use a floating license, then refer to the Using Floating Licensing section.

Step 3. Initial configuration

It is important to configure the following before logging into Connect for the first time:

  • Server email address

  • Server address

  • Authentication

Server email address and server address

Property Description
Server.SenderEmail The email address from which Connect sends emails.
Sever.Address The server address/public URL of your server.
Server.EmailProvider Determines how Connect sends emails.
SMTP Sends email using an SMTP endpoint.
Caution

If you do not properly configure the Server.Address, then you cannot add a user to the server because the account confirmation link requires the Server.Address to be configured. Additionally, some other Connect features are not available without this property defined.

  • Make changes in the /etc/rstudio-connect/rstudio-connect.gcfg file using the examples below:

    File: /etc/rstudio-connect/rstudio-connect.gcfg
    [Server]
    Address = "https://rstudio-connect.company.com"
    EmailProvider = "SMTP"
    SenderEmail = "account@company.com"
    
    [SMTP]
    Host = "smtp.example.com"
    Port = 587
    User = "service-user"
    Password = "service-password"
Important

By default, Connect’s email functionality is disabled until it is properly configured. We strongly recommend configuring it now so all of Connect’s features are available right away.

  • Save your changes and restart Connect:

    Terminal
    sudo systemctl restart rstudio-connect

For more information about configuring these properties, see the Editing the Configuration File section.

Authentication

Connect can be configured by customizing the Authentication.Provider property in the /etc/rstudio-connect/rstudio-connect.gcfg file. The Authentication section provides detailed explanations and additional information about configuring authentication in Connect.

Warning

Failure to configure authentication before logging in for the first time can cause serious problems for you in the future. Although it is possible to change the authentication method at a later date, it is cumbersome and can result in a loss of user content subscriptions, and other assets. However, if you plan on using Connect on a trial basis using Password authentication, which is not recommended, then you are now able to log into Connect.

Step 4. Log in and verify configuration

Important

By default, the first user to log into Connect is assigned administrative privileges. Additionally, other users can be promoted to administrators after the configuration is complete.

  • Log in:

    • Open a web browser and navigate to the public URL that you defined for your Connect server. The default location is: http://your-connect-server-address:3939/

    • Click Sign Up.

    • Populate the fields with the required information, then click Sign Up. Log into Connect, and the Jump Start Examples window displays.

    • Close the Jump Start Examples window.

      Note

      The Jump Start Example window displays each time a user logs into Connect. However, if you close the window but decide that you want to launch one of the Jump Start Examples, then:

      • From the upper right-hand corner click the Publish drop-down button.
      • Select Jump Start Examples.

      Screen capture of the Publish drop-down menu.

  • Verify email:

    • From the Menu bar, click Admin.

    • Click Mail Settings.

    • Click Send Test Email.

    • Wait a few moments and then verify that the test email was successfully delivered.

  • Verify configuration:

    • To verify the initial configuration that you applied during the installation, we recommend that you do one of the following:

      • Have an Posit user log into Connect and publish one of the Jump Start Examples that display when they log into Connect.

      • Publish content to Connect using one of the Publish to Posit Connect How-to Guides.

    • If a user can publish content to Connect, then you successfully configured Connect.

Step 5. Start using Connect

Congratulations! You have verified that users can log in, deploy content, and view content on the server.

There are several additional features and configuration options that you might wish to enable.

Continue to the Initial Configuration section of the documentation for more information.

Additional information

We understand that older configurations might be incompatible with newer versions of our products. If you require a previous version, we have several supported versions available on our Previous Versions page.

Please consider:

  • Posit is limited on the support that we can provide for older versions

  • If you are using an older version and run into any issues, you might be asked to upgrade to receive support

Please review our Support Agreement for more detail on our product support policy.