Pimcore is a powerful and flexible open-source platform for managing digital data and assets. It is written in PHP and is developed with a modern web application framework called Symfony.
In this tutorial, we will show you how to install the latest version of Pimcore on OpenSUSE. We will assume that you have a basic knowledge of Linux and have sudo access to an OpenSUSE server.
Before we begin, make sure that your system is up-to-date by running the following command:
sudo zypper update
Pimcore requires a web server and PHP to run. We will use Apache as the web server and PHP 7.4 for this installation.
To install Apache and PHP, run the following command:
sudo zypper install apache2 php7 php7-mysqlnd php7-mbstring php7-gd php7-xmlwriter php7-mbstring php7-ctype php7-intl php7-iconv php7-fileinfo php7-zip
After the installation is complete, start the Apache web server.
sudo systemctl start apache2
Pimcore requires a database management system to store its data. In this tutorial, we will use MySQL as the database management system.
To install MySQL, run the following command:
sudo zypper install mysql-community-server
After the installation is complete, start the MySQL service and enable it to start at boot time.
sudo systemctl start mysql
sudo systemctl enable mysql
Download the latest version of Pimcore from their official website using wget command:
wget https://www.pimcore.org/download/pimcore-latest.zip
Unzip the downloaded file and move it to the Apache web server's root directory.
unzip pimcore-latest.zip
sudo mv pimcore-6.x.x /srv/www/htdocs/
Change the ownership of the pimcore directory to the Apache web server user.
sudo chown -R wwwrun:www /srv/www/htdocs/pimcore-6.x.x
Create a new MySQL database and user for Pimcore using the following commands.
Login to mysql:
sudo mysql
Create a new database named pimcoredb
.
CREATE DATABASE pimcoredb;
Create a new user named pimcoreuser
with a password of your choice. Replace PASSWORD_HERE with the actual password.
CREATE USER 'pimcoreuser'@'localhost' IDENTIFIED BY 'PASSWORD_HERE';
Grant all privileges to the pimcore user on the pimcoredb database.
GRANT ALL PRIVILEGES ON pimcoredb.* TO 'pimcoreuser'@'localhost';
Flush the privileges and exit from the MySQL shell.
FLUSH PRIVILEGES;
exit;
Pimcore comes with a configuration file named app/config/config.yml.dist
. You need to edit this file and configure the database connection details.
sudo nano /srv/www/htdocs/pimcore-6.x.x/app/config/config.yml.dist
Update the following parameters in the configuration file with the appropriate values.
database_host: localhost
database_port: 3306
database_name: pimcoredb
database_user: pimcoreuser
database_password: PASSWORD_HERE
Save the changes and rename the file to config.yml
.
sudo mv /srv/www/htdocs/pimcore-6.x.x/app/config/config.yml.dist /srv/www/htdocs/pimcore-6.x.x/app/config/config.yml
Create a new virtual host for Pimcore by creating a new configuration file with the following contents.
sudo nano /etc/apache2/vhosts.d/pimcore.conf
Add the following configuration to the file:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /srv/www/htdocs/pimcore-6.x.x/web
ServerName YOUR_DOMAIN_NAME
<Directory /srv/www/htdocs/pimcore-6.x.x/web>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/apache2/pimcore_error.log
CustomLog /var/log/apache2/pimcore_access.log combined
</VirtualHost>
Replace YOUR_DOMAIN_NAME with the actual domain name that you want to use for Pimcore.
Restart the Apache web server to apply the changes.
sudo systemctl restart apache2
Open your web browser and enter your server's IP address or domain name into the address bar. You will see the Pimcore installation page. Follow the instructions to complete the installation.
Congratulations! You have successfully installed Pimcore on OpenSUSE Latest.
If you want to self-host in an easy, hands free way, need an external IP address, or simply want your data in your own hands, give IPv6.rs a try!
Alternatively, for the best virtual desktop, try Shells!