How to install Concrete CMS on Debian 12
- .07:31 a2dissite 000-default.conf
- 00:26 lsb_release -a
- 00:33 apt-get install apache2
- 00:51 systemctl status apache2
- 01:19 apt install php php-common php-curl libapache2-mod-php php-imap php-cli php-xml php-zip php-mbstring php-gd php-mysql
- 02:06 php -v
- 02:13 apt install mariadb-server
- 02:40 systemctl status mariadb
- 03:03 mysql
- 03:08 CREATE DATABASE concrete;
- 03:17 CREATE USER 'concrete_usr'@'localhost' IDENTIFIED BY '123456';
- 03:48 GRANT ALL PRIVILEGES ON concrete.* TO 'concrete_usr'@'localhost';
- 04:32 FLUSH PRIVILEGES;
- 04:41 exit
- 04:46 cd /tmp
- 05:00 wget --trust-server-names https://www.concretecms.com/download_file/277af433-97d4-4817-b48c-a758cd8adf96 -O concrete5.zip
- 05:13 unzip concrete5.zip
- 05:31 mv concrete-cms-9.2.0/ /var/www/concrete
- 05:52 chown -R www-data:www-data /var/www/concrete/
- 06:20 chmod -R 755 /var/www/concrete/
- 06:35 vim /etc/apache2/sites-available/concrete.conf
- 07:07 a2ensite concrete.conf
- 07:41 apachectl -t
- 07:56 vim /etc/hosts
- 08:13 systemctl restart apache2
To Install Concrete CMS On Debian 12
Introduction:
Concrete CMS is an open-source content management system for teams. A website builder with built-in tools makes editing content easy.
Procedure Steps:
Step 1: Check the OS version by using the below command.
root@linuxhelp:~# lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 12 (bookworm)
Release: 12
Codename: bookworm
Step 2: Install the Apache web server by using the below command.
root@linuxhelp:~# apt-get install apache2
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
apache2-data apache2-utils
Suggested packages:
apache2-doc apache2-suexec-pristine | apache2-suexec-custom
The following NEW packages will be installed:
apache2 apache2-data apache2-utils
0 upgraded, 3 newly installed, 0 to remove and 196 not upgraded.
Need to get 577 kB of archives.
After this operation, 1,890 kB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://deb.debian.org/debian bookworm/main amd64 apache2-data all 2.4.57-2 [160 kB]
Get:2 http://deb.debian.org/debian bookworm/main amd64 apache2-utils amd64 2.4.57-2 [202 kB]
Get:3 http://deb.debian.org/debian bookworm/main amd64 apache2 amd64 2.4.57-2 [215 kB]
Fetched 577 kB in 1s (1,145 kB/s)
Selecting previously unselected package apache2-data.
(Reading database ... 168802 files and directories currently installed.)
Preparing to unpack .../apache2-data_2.4.57-2_all.deb ...
Unpacking apache2-data (2.4.57-2) ...
Selecting previously unselected package apache2-utils.
Preparing to unpack .../apache2-utils_2.4.57-2_amd64.deb ...
Unpacking apache2-utils (2.4.57-2) ...
Selecting previously unselected package apache2.
Preparing to unpack .../apache2_2.4.57-2_amd64.deb ...
Unpacking apache2 (2.4.57-2) ...
Setting up apache2-data (2.4.57-2) ...
Setting up apache2-utils (2.4.57-2) ...
Setting up apache2 (2.4.57-2) ...
Step 3: Check status of Apache web server by using the below command.
root@linuxhelp:~# systemctl status apache2
● apache2.service - The Apache HTTP Server
Loaded: loaded (/lib/systemd/system/apache2.service; enabled; preset: enabled)
Active: active (running) since Thu 2024-01-04 22:37:07 IST; 8s ago
Docs: https://httpd.apache.org/docs/2.4/
Main PID: 14351 (apache2)
Tasks: 55 (limit: 3408)
Memory: 22.3M
CPU: 56ms
CGroup: /system.slice/apache2.service
├─14351 /usr/sbin/apache2 -k start
├─14352 /usr/sbin/apache2 -k start
└─14353 /usr/sbin/apache2 -k start
Jan 04 22:37:07 linuxhelp systemd[1]: Starting apache2.service - The Apache HTTP Serv>
Jan 04 22:37:07 linuxhelp systemd[1]: Started apache2.service - The Apache HTTP Serve>
Step 4: Install PHP and dependencies by using the below command.
root@linuxhelp:~# apt install php php-common php-curl libapache2-mod-php php-imap php-cli php-xml php-zip php-mbstring php-gd php-mysql
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
libapache2-mod-php8.2 libzip4 php8.2 php8.2-cli php8.2-common php8.2-curl
php8.2-gd php8.2-imap php8.2-mbstring php8.2-mysql php8.2-opcache php8.2-readline
php8.2-xml php8.2-zip
Suggested packages:
php-pear
The following NEW packages will be installed:
libapache2-mod-php libapache2-mod-php8.2 libzip4 php php-cli php-common php-curl
php-gd php-imap php-mbstring php-mysql php-xml php-zip php8.2 php8.2-cli
php8.2-common php8.2-curl php8.2-gd php8.2-imap php8.2-mbstring php8.2-mysql
php8.2-opcache php8.2-readline php8.2-xml php8.2-zip
0 upgraded, 25 newly installed, 0 to remove and 196 not upgraded.
Need to get 5,356 kB of archives.
After this operation, 24.2 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://deb.debian.org/debian bookworm/main amd64 php-common all 2:93 [13.1 kB]
Processing triggers for man-db (2.11.2-2) ...
Processing triggers for libc-bin (2.36-9+deb12u1) ...
Processing triggers for php8.2-cli (8.2.7-1~deb12u1) ...
Processing triggers for libapache2-mod-php8.2 (8.2.7-1~deb12u1) ...
Step 5: Check the PHP version by using the below command.
root@linuxhelp:~# php -v
PHP 8.2.7 (cli) (built: Jun 9 2023 19:37:27) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.2.7, Copyright (c) Zend Technologies
with Zend OPcache v8.2.7, Copyright (c), by Zend Technologies
Step 6: Install MariaDB database server by using the below command.
root@linuxhelp:~# apt install mariadb-server
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
galera-4 gawk libcgi-fast-perl libcgi-pm-perl libconfig-inifiles-perl libdaxctl1
libdbd-mariadb-perl libdbi-perl libfcgi-bin libfcgi-perl libfcgi0ldbl
libhtml-template-perl libmariadb3 libndctl6 libpmem1 libsigsegv2
libterm-readkey-perl liburing2 mariadb-client mariadb-client-core mariadb-common
mariadb-plugin-provider-bzip2 mariadb-plugin-provider-lz4
mariadb-plugin-provider-lzma mariadb-plugin-provider-lzo
mariadb-plugin-provider-snappy mariadb-server-core pv rsync socat
Suggested packages:
gawk-doc libmldbm-perl libnet-daemon-perl libsql-statement-perl
libipc-sharedcache-perl mailx mariadb-test netcat-openbsd doc-base
python3-braceexpand
The following NEW packages will be installed:
galera-4 gawk libcgi-fast-perl libcgi-pm-perl libconfig-inifiles-perl libdaxctl1
libdbd-mariadb-perl libdbi-perl libfcgi-bin libfcgi-perl libfcgi0ldbl
libhtml-template-perl libndctl6 libpmem1 libsigsegv2 libterm-readkey-perl
liburing2 mariadb-client mariadb-client-core mariadb-plugin-provider-bzip2
mariadb-plugin-provider-lz4 mariadb-plugin-provider-lzma
mariadb-plugin-provider-lzo mariadb-plugin-provider-snappy mariadb-server
mariadb-server-core pv rsync socat
The following packages will be upgraded:
libmariadb3 mariadb-common
2 upgraded, 29 newly installed, 0 to remove and 194 not upgraded.
Need to get 18.6 MB/18.8 MB of archives.
After this operation, 193 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://deb.debian.org/debian bookworm/main amd64 libsigsegv2 amd64 2.14-1 [37.2 kB]
Get:2 http://deb.debian.org/debian bookworm/main amd64 gawk amd64 1:5.2.1-2 [673 kB]
Processing triggers for man-db (2.11.2-2) ...
Processing triggers for libc-bin (2.36-9+deb12u1) ...
Processing triggers for mariadb-server (1:10.11.4-1~deb12u1) ...
Step 7: Check the status of MariaDB database server by using the below command.
root@linuxhelp:~# systemctl status mariadb
● mariadb.service - MariaDB 10.11.4 database server
Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; preset: enabled)
Active: active (running) since Thu 2024-01-04 22:38:12 IST; 5s ago
Docs: man:mariadbd(8)
https://mariadb.com/kb/en/library/systemd/
Main PID: 26194 (mariadbd)
Status: "Taking your SQL requests now..."
Tasks: 17 (limit: 3408)
Memory: 124.3M
CPU: 425ms
CGroup: /system.slice/mariadb.service
└─26194 /usr/sbin/mariadbd
Jan 04 22:38:12 linuxhelp mariadbd[26194]: 2024-01-04 22:38:12 0 [Note] InnoDB: Loadi>
Jan 04 22:38:12 linuxhelp mariadbd[26194]: 2024-01-04 22:38:12 0 [Note] Plugin 'FEEDB>
Jan 04 22:38:12 linuxhelp mariadbd[26194]: 2024-01-04 22:38:12 0 [Warning] You need t>
Step 8: Login to the MySQL by using the below command.
root@linuxhelp:~# mysql
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 31
Server version: 10.11.4-MariaDB-1~deb12u1 Debian 12
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
Step 9: Create database by using the below command.
MariaDB [(none)]> CREATE DATABASE concrete;
Query OK, 1 row affected (0.000 sec)
Step 10: Create user with password by using the below command.
MariaDB [(none)]> CREATE USER 'concrete_usr'@'localhost' IDENTIFIED BY '123456';
Query OK, 0 rows affected (0.001 sec)
Step 11: Make the Grand privileges to the user by using the below command.
MariaDB [(none)]> GRANT ALL PRIVILEGES ON concrete.* TO 'concrete_usr'@'localhost';
Query OK, 0 rows affected (0.001 sec)
Step 12: Reload the MySQL by using the below command.
MariaDB [(none)]> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.000 sec)
Step 13: Exit the MySQL by using the below command.
MariaDB [(none)]> exit
Bye
Step 14: Go to tmp location by using the below command.
root@linuxhelp:~# cd /tmp
Step 15: Download the concrete CMS by using the below command.
root@linuxhelp:/tmp# wget --trust-server-names https://www.concretecms.com/download_file/277af433-97d4-4817-b48c-a758cd8adf96 -O concrete5.zip
--2024-01-04 22:40:40-- https://www.concretecms.com/download_file/277af433-97d4-4817-b48c-a758cd8adf96
Resolving www.concretecms.com (www.concretecms.com)... 108.158.251.101, 108.158.251.124, 108.158.251.35, ...
Connecting to www.concretecms.com (www.concretecms.com)|108.158.251.101|:443... connected.
HTTP request sent, awaiting response... 307 Temporary Redirect
Location: https://www.concretecms.com/application/files/7316/8202/4279/concrete-cms-9.2.0.zip [following]
--2024-01-04 22:40:41-- https://www.concretecms.com/application/files/7316/8202/4279/concrete-cms-9.2.0.zip
Reusing existing connection to www.concretecms.com:443.
HTTP request sent, awaiting response... 200 OK
Length: 76901122 (73M) [application/zip]
Saving to: ‘concrete5.zip’
concrete5.zip 100%[=======================>] 73.34M 11.2MB/s in 6.5s
2024-01-04 22:40:47 (11.2 MB/s) - ‘concrete5.zip’ saved [76901122/76901122]
Step 16: Unzip the zip file by using the below command.
root@linuxhelp:/tmp# unzip concrete5.zip
Archive: concrete5.zip
creating: concrete-cms-9.2.0/
inflating: concrete-cms-9.2.0/composer.lock
extracting: concrete-cms-9.2.0/index.php
creating: concrete-cms-9.2.0/concrete/
creating: concrete-cms-9.2.0/concrete/blocks/
creating: concrete-cms-9.2.0/concrete/blocks/desktop_featured_theme/
inflating: concrete-cms-9.2.0/concrete/blocks/desktop_featured_theme/controller.php
inflating: concrete-cms-9.2.0/concrete/blocks/desktop_featured_theme/view.php
creating: concrete-cms-9.2.0/concrete/blocks/switch_language/
inflating: concrete-cms-9.2.0/concrete/blocks/switch_language/add.php
extracting: concrete-cms-9.2.0/concrete/blocks/switch_language/icon.png
inflating: concrete-cms-9.2.0/concrete/blocks/switch_language/controller.php
inflating: concrete-cms-9.2.0/concrete/blocks/switch_language/db.xml
inflating: concrete-cms-9.2.0/concrete/blocks/switch_language/view.php
creating: concrete-cms-9.2.0/concrete/blocks/switch_language/templates/
creating: concrete-cms-9.2.0/concrete/blocks/switch_language/templates/flags/
inflating: concrete-cms-9.2.0/concrete/blocks/switch_language/templates/flags/view.php
creating: concrete-cms-9.2.0/application/src/
inflating: concrete-cms-9.2.0/robots.txt
inflating: concrete-cms-9.2.0/LICENSE.TXT
inflating: concrete-cms-9.2.0/composer.json
Step 17: Move the concrete directory to the apache document root directory by using the below command.
root@linuxhelp:/tmp# mv concrete-cms-9.2.0/ /var/www/concrete
Step 18: Change the ownership of the document root by using the below command.
root@linuxhelp:/tmp# chown -R www-data:www-data /var/www/concrete/
Step 19: Change permission to document root by using the below command.
root@linuxhelp:/tmp# chmod -R 755 /var/www/concrete/
Step 20: Create and edit the virtual host file by using the below command.
root@linuxhelp:/tmp# vim /etc/apache2/sites-available/concrete.conf
<VirtualHost *:80>
ServerAdmin admin@linuxhelp.xyz
DocumentRoot /var/www/concrete
ServerName linuxhelp.xyz
<Directory /var/www/concrete5>
Options FollowSymlinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/linuxhelp.xyz_error.log
CustomLog ${APACHE_LOG_DIR}/linuxhelp.xyz_access.log combined
</VirtualHost>
Step 21: Enable the virtual host by using the below command.
root@linuxhelp:/tmp# a2ensite concrete.conf
Enabling site concrete.
To activate the new configuration, you need to run:
systemctl reload apache2
Step 22: Disable the default virtual host by using the below command.
root@linuxhelp:/tmp# a2dissite 000-default.conf
Site 000-default disabled.
To activate the new configuration, you need to run:
systemctl reload apache2
Step 23: Check apache configuration syntax by using the below command.
root@linuxhelp:/tmp# apachectl -t
AH00112: Warning: DocumentRoot [/var/www/concrete5] does not exist
Syntax OK
Step 24: Make the host entry by using the below command.
root@linuxhelp:/tmp# vim /etc/hosts
127.0.0.1 localhost
192.168.6.131 linuxhelp.xyz linuxhelp.linuxhelp linuxhelp
# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
Step 25: Restart the Apache by using the below command.
root@linuxhelp:/tmp# systemctl restart apache2
Step 26: Open and search the domain name as shown in below image.

Step 27: Choose preferred language and click the arrow as shown in below image.

Step 28: Verify the testing environment and click continue to installation as shown in below image.

Step 29: Configure the site information and click install concrete CMS as shown in below image.

Step 30: will be Install the CMS as shown in below image.

Step 31: The welcome page will be prompt as shown in below image.

Conclusion:
We have reached the end of this article. In this guide, we have walked you through the steps required to install Concrete CMS on Debian 12. Your feedback is much welcome.
Comments ( 0 )
No comments available