Below is a list of common issues related to the installation and execution of GeneXus Next on your desktop, but first it is appropriate to explain what is run when you use GeneXus Next on your device.
When you run GeneXus Next on your device, you will:
- be running a UI on the browser,
- that connects to a Docker container with a Web Server containing the GeneXus frontend (this container is typically named "gxweb-1" and runs on port 3000),
- that connects to another Docker container with another Web Server containing web services and the business logic (this container is typically named "gxms-1" and runs on port 8001),
- that connects to another container with a SQL Server (this container is typically named "sql-1" on port 1433).
Names and ports are set by docker-compose.yml, a file that is part of your GeneXus Next installation.
All that is running locally. The first time you run GeneXus Next, these Docker containers will be downloaded from Docker Hub.
The GeneXus Next containers are:
- https://hub.docker.com/r/genexus/next-core/tags
- https://hub.docker.com/r/genexus/next-webui/tags
Note
- The SQL Server container is provided by Microsoft.
- To be able to use AI assistants, you need an Internet connection.
To know which version you are running, open the docker-compose.yml file that is part of the zip file of the GeneXus Next you downloaded from the GeneXus website.
Strings like "GXWEB_IDE_VERSION:-0.0.566" and "GXWEB_BL_VERSION:-bl-182121-services1.0.681" are the ones that identify the version; that is, the ones you should copy and include in any report to the Support team.
Another way to find out the version is to look in the Docker Desktop application. To do so, open it and click on the corresponding container (gxms-1 or gxweb-1). Once inside the selected container, you can see the version under the title, in the version link after the slash ('/').
Detailed logs are generated in the Docker containers. Typically, the container named "gxms-1" runs the backend services and business logic of GeneXus and has the stack trace or exception you need to send to the Support team.
To execute a PowerShell script, it is required to have unrestricted execution policies. Otherwise, it will give this error:
PS C:\genexus\gxnext> ./dup.ps1
./dup.ps1 : File C:\genexus\gxnext\dup.ps1 cannot be loaded because running scripts is disabled on this system. For more
information, see about_Execution_Policies at https:/go.microsoft.com/fwlink/?LinkID=135170.
At line:1 char:1
+ ./dup.ps1
+ 05/02/24 08:15 PM[[User:user1]] 05/02/24 08:15 PM
+ CategoryInfo : SecurityError: (:) [], PSSecurityException
+ FullyQualifiedErrorId : UnauthorizedAccess
PS C:\genexus\gxnext> Set-ExecutionPolicy Unrestricted
You will get something similar to the following:
Execution Policy Change
The execution policy helps protect you from scripts that you do not trust. Changing the execution policy might expose
you to the security risks described in the about_Execution_Policies help topic at
https:/go.microsoft.com/fwlink/?LinkID=135170. Do you want to change the execution policy?
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "N"): Y
PS C:\genexus\gxnext> ./dup.ps1
[+] Running 29/18
✔ gxweb 11 layers [⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿] 0B/0B Pulled 127.5s
✔ gxms 11 layers [⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿] 0B/0B Pulled 172.0s
✔ sql 4 layers [⣿⣿⣿⣿] 0B/0B Pulled 200.5s
When downloading the zip file, it may get blocked. If that happens, this error is displayed:
Run only scripts that you trust. While scripts from the internet can be useful, this script can potentially harm your computer. If you trust this script, use the Unblock-File cmdlet to allow the script to run without this warning message. Do you want to run C:\GeneXusNextRUN\dup.ps1?
[D] Do not run [R] Run once [S] Suspend [?] Help (default is "D"):
Type 'R'.
When executing the dup.sh script, the following error may be displayed:
permission denied: ./dup.sh
You have to assign running permissions to the dup.sh script, so that it can be executed from the terminal. To do so, write:
chmod +x ./dup.sh
After that, execute the script:
./dup.sh