Skip to content

Latest commit

 

History

History
136 lines (103 loc) · 5.98 KB

dotnet-installation-on-docker-container-2024-q2.md

File metadata and controls

136 lines (103 loc) · 5.98 KB
title description type page_title slug tags res_type
Installing ReportServer.NET version 2024 Q2 on Docker Container
Learn how to install the Telerik Report Server for .NET version 2024 Q2 on Docker Container.
how-to
Install RS.NET 2024 Q2 on Docker Container
dotnet-installation-on-docker-container-2024-q2
installation,dotnet,docker,linux,container
kb

The steps in this tutorial are for RS.NET 2024 Q2. For newer Report Server versions use the Documentation article [Report Server for .NET: Installation on Docker Container]({%slug dotnet-installation-on-docker-container%}).

Description

The Report Server for .NET (RS.NET) is ready for deployment on Docker Containers. The assets for non-Windows platforms are available as separate resources downloadable from your Telerik account.

This article is a step-by-step tutorial on deploying Telerik Report Server for .NET on a Linux Docker Container with a [Microsoft SQL Server (MsSqlServer) Storage]({%slug storage-settings%}#microsoft-sql-server-mssqlserver) deployed on its own Docker Container based on the image mcr.microsoft.com/mssql/server:2019-latest exposed publicly on port 1433.

Installation Process

  1. Download the archive Telerik_ReportServer_Net_NonWindows_{Report Server version}.zip from your Telerik account.

  2. Unzip the archive. The content gets deployed in two folders ReportServer and ReportServiceAgent.

  3. Open the Powershell and navigate to the subfolder ReportServer.

  4. Run the command docker build -t telerik-report-server:local . in Powershell to build the Report Server Manager image.

  5. Navigate to the subfolder ReportServiceAgent.

  6. Run the command docker build -t telerik-report-server-agent:local . in Powershell to build the Report Server ServiceAgent image.

  7. Navigate to the subfolder ReportServer\docker-configs.

  8. Open the file docker-compose.yml in a text editor like Notepad++ and edit its content. Delete everything between the lines services: and storage:. Before the line environments include the next lines:

      ports:
        - "1433:1433"

	The tabulation is essential and should be preserved. Here is the final content of the `docker-compose.yml` file:

	````yaml
services:

	storage:
	  image: "mcr.microsoft.com/mssql/server:2019-latest"
	  restart: always
	  ports:
	    - "1433:1433"
	  environment:
	    - SA_PASSWORD=place_your_sa_password_here
	    - ACCEPT_EULA=Y
	  volumes: 
	    - mssql-storage:/var/opt/mssql

	volumes:
	mssql-storage:
Save the modified file.
  1. Run the command docker-compose up in Powershell to execute the above script to create and run the MsSqlServer Docker container we are going to use as Report Server Storage.

  2. Open MSSQL Management Studio and Login with the following parameters:

    • Server : localhost
    • User : sa
    • Password: place_your_sa_password_here (this is the argument SA_PASSWORD from the above script file. You may change it as required.)
  3. Add the database named reportserver. After successfully creating the database, you may close the management studio.

  4. Stop the current process in Powershell, for example, with the key combination Ctrl+C.

  5. Go back to the text editor with the opened file docker-compose.yml and restore its original content:

services:

# template configuration of Report Server.
# Includes sample config for /app/Data File Storage.
telerik-report-server:
  env_file:
    - mssql_storage.env
  image: telerik-report-server:local
  restart: always
  ports:
    - "82:80"
  depends_on: 
    - storage

# template configuration of Report Server Agent.
# Includes sample config for /app/Data File Storage.
telerik-report-server-agent:
  environment:
    - Agent__Name=FirstAgent,
    - Agent__Address=http://telerik-report-server-agent:80
  env_file:
    - mssql_storage.env
  image: telerik-report-server-agent:local
  restart: always
  depends_on:
    - storage

storage:
  image: "mcr.microsoft.com/mssql/server:2019-latest"
  restart: always
  environment:
    - SA_PASSWORD=place_your_sa_password_here
    - ACCEPT_EULA=Y
  volumes: 
    - mssql-storage:/var/opt/mssql

volumes:
mssql-storage:


	Save the file.

1. Go back to the _Powershell_ environment and execute the above _yaml_ file with the same command `docker-compose up`. This should run the Report Server Manager and ReportServer.ServiceAgent for .NET.
1. Navigate to `localhost:82` in the browser to open the Report Server Manager for .NET.

The first time you open the Report Server you need to configure it as explained in the article [Application Startup]({%slug application-startup%}).

## Additional Resources

You may download and watch the whole process from our `reporting-samples` GitHub repository: [SetupRS.NET-Docker.zip](https://github.com/telerik/reporting-samples/blob/master/VideosRS/SetupRS.NET-Docker.zip).

## Notes

The above approach for starting the RS.NET from the container will stop it *each* time you restart the machine. To avoid this, execute the following commands in _Powershell_ from the folder _.\ReportServer\docker-configs\_ to start/stop the Report Server instead of using the commands `docker-compose up` and `docker-compose down`:

1. (_optional_, use it only if it was not used before) Initialize a swarm to make the Docker Engine hosting the RS.NET a manager in the newly created single-node swarm:`docker swarm init`
1. Start the RS.NET with `.\start-docker-server.bat`
1. (_optional_) Stop the RS.NET with `.\stop-docker-server.bat`

## See Also

* [Telerik Report Server Introduction]({%slug introduction%})
* [Report Server for .NET Introduction]({%slug coming-soon%})
* [Report Server for .NET: Installation on Docker Container]({%slug dotnet-installation-on-docker-container%})
* [SetupRS.NET-Docker.mp4](https://github.com/telerik/reporting-samples/blob/master/VideosRS/SetupRS.NET-Docker.mp4)