Test in production without watermarks.
Works wherever you need it to.
Get 30 days of fully functional product.
Have it up and running in minutes.
Full access to our support engineering team during your product trial
Guacamole Docker is the Dockerized deployment of Apache Guacamole, a clientless remote desktop gateway that allows users to access remote systems, like desktops or servers, via a web browser without installing additional software. It is comprised of two major parts: the Guacamole Web Application, which acts as a user interface for session management and access to remote sessions, and the Guacamole Daemon (guacd), which takes care of the protocol translation for RDP, VNC, and SSH connections. Optionally, it can be used in conjunction with a database such as MySQL or PostgreSQL to store user accounts and connection configurations. Guacamole Docker simplifies deployment, is platform-independent, supports file transfers and clipboard sharing, and offers secure, centralized access to multiple remote systems.
Docker must be installed on your computer. If Docker is not installed, install it by following the appropriate installation procedure for your operating system:
Open up PowerShell as Administrator and enter the following command.
wsl --install
wsl --install
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'wsl --install
Restart your computer if prompted.
Follow the setup wizard and log into your Docker Hub account if prompted.
Apache Guacamole consists of two major Docker images:
Pull the guacamole/guacd image that handles the protocol translations for RDP, VNC, and SSH.
docker pull guacamole/guacd
Broken image Add from Pixabay, select from your files or drag and drop an image here.
Pull a guacamole/guacamole image, which will provide the web interface to allow users to connect to remote systems.
docker pull guacamole/guacamole
Broken image Add from Pixabay, select from your files or drag and drop an image here.
Apache Guacamole needs a mechanism to authenticate users. This section describes database authentication via MySQL SQL scripts, although PostgreSQL database and MariaDB are supported for Guacamole authentication as well as other non-database methods.
docker pull mysql:8
Broken image Add from Pixabay, select from your files or drag and drop an image here.
Create a database initialization script to create a table for MySQL authentication:
docker run --rm guacamole/guacamole /opt/guacamole/bin/initdb.sh --mysql > initdb.sql
Rename and move SQL scripts included with Guacamole schema which can be run into the MySQL Docker container.
docker cp initdb.sql example-mysql:/guac_db.sql
Open a bash shell within the MySQL utility Docker container.
docker exec -it example-mysql bash
The shell prompt should now change to bash-4.4# or something similar. Within the bash shell prompt for the container, log into the MySQL database as the root user:
mysql -u root -p
mysql -u root -p
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'mysql -u root -p
The prompt should change again to MySQL.
Broken image Add from Pixabay, select from your files or drag and drop an image here.
In the MySQL prompt, change the root password, create a fresh MySQL database, and create a new user for that newly created database. When running the below commands, replace any instance of password with a secure password string for the MySQL root user and the new user for your database, respectively.
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';
CREATE DATABASE guacamole_db;
CREATE USER 'guacamole_user'@'%' IDENTIFIED BY 'password';
GRANT SELECT,INSERT,UPDATE,DELETE ON guacamole_db.* TO 'guacamole_user'@'%';
FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';
CREATE DATABASE guacamole_db;
CREATE USER 'guacamole_user'@'%' IDENTIFIED BY 'password';
GRANT SELECT,INSERT,UPDATE,DELETE ON guacamole_db.* TO 'guacamole_user'@'%';
FLUSH PRIVILEGES;
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'ALTER USER 'root"@"clocalhost' IDENTIFIED BY 'password'; CREATE DATABASE guacamole_db; CREATE USER 'guacamole_user"@"c%' IDENTIFIED BY 'password'; GRANT @SELECT,INSERT,UPDATE,DELETE @ON guacamole_db.* @TO 'guacamole_user"@"c%'; FLUSH PRIVILEGES;
We can see all the tables in the table using the below command:
SHOW TABLES;
SHOW TABLES;
Dim TABLES As SHOW
Start guacd using the below Docker commands (Guacamole Daemon).
docker run -d --name guacd guacamole/guacd
Link the guacd container and MySQL database manually into Guacamole:
docker run --name guacamole-client --link guacd:guacd --link guacamoledb:mysql -e MYSQL_DATABASE=guacdb -e MYSQL_USER=guacamole_user -e MYSQL_PASSWORD=password -d -p 85:8085 guacamole/guacamole
As shown below, let's verify the status of each Docker container on the running system or machine hosting Docker.
docker ps -a
You should see each container that you created in previous steps.
Once the Guacamole client container is created we can access it through the web browser with the given port number at the time of creating the Guacamole container. Below is the login page of Guacamole client screenshot.
Guacamole supports SSH by default. Make sure the required extension (guacamole-auth-jdbc or similar) and its dependencies are installed. SSH is usually supported out of the box with Guacamole.
Now, log out of the admin interface and log in as a user with access to the new connection. Select the connection from the list.
It opens the SSH session in the browser.
IronSecureDoc is a document management and security utility tool, utilizing advanced encryption, complex PDF manipulation, and digital signing. It offers firms and developers the convenience of smooth access and, thus, allows for easier processing of PDF documents without any direct or indirect dependencies. It can be referred to as an Aggressive PDF API if the features enable developers to automatically create and, upload, manipulate, and secure PDF files and documents programmatically.
More to that, IronPDF is a PDF API that enables the creation of a PDF from any type of data input and adding or editing content through parameters like text, images, or metadata. It incorporates the functionality for merging several PDFs and making composed files, splitting documents, and even comments, highlights, or watermarks for annotations.
Run the following command to pull the Docker image.
docker pull ironsoftwareofficial/ironsecuredoc:latest
ironsecuredoc: latest Replace with the given version or tag if provided.
Start a container using the downloaded image.
docker container run --rm -p 8080:8080 -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> -e ENVIRONMENT=Development -e HTTP_PORTS=8080 ironsoftwareofficial/ironsecuredoc:latest
If IronSecureDoc has a web interface, open the server's IP address in your browser with the specified port, for example, http://
Below is the IronSecureDoc web interface:
curl -X 'POST' \
'http://localhost:8080/encrypt?user_password=demo' \
-H 'accept: */*' \
-H 'Content-Type: multipart/form-data' \
-F 'pdf_file=@test.pdf;type=application/pdf'
But if we post the code to the IronSecureDoc API, we might also want to request the password to encrypt the request with a user's password to a document. The output file of the document will automatically be sent and downloaded, and it will be saved safely.
Apache Guacamole will enable easy Docker integration for users who wish to remotely access and easily manage containerized applications, including IronSecureDoc, through secure and user-friendly SSH interfaces. Docker's flexibility and the convenience offered by Guacamole allow system administrators to provision, manage, and offer controlled access to powerful tools without exposing their servers directly to the users.
This would ensure scalability, security, and ease of use, which are ideal benefits for organizations when using containerized environments. Providing a reliable platform that simplifies operations while making access more accessible to the end users in the application deployment, testing, or even production, works.
Reliable and Compliant: It can make a full audit with maximum security. With IronSecureDoc REST API, secure printing efficient PDF format and error handling can now be easily integrated into the applications developed by web, mobile, and corporate systems developers. For information on IronSecureDoc's license, please visit the licensing page. For detailed configuration information about the products of Iron Software, please follow the library suite page.
10 .NET API products for your office documents