Instalasi dan Konfigurasi Ecommerce Shopware Di FreeBSD

Terbit: Perbarui:
Tags


Jika Anda memiliki toko fisik atau bisnis dan ingin beralih atau berekspansi ke dunia daring, Anda harus terlebih dahulu memahami platform mana yang paling sesuai dengan kemampuan serta jenis bisnis Anda. Ada banyak platform toko daring yang tersedia, namun ada satu hal yang kita semua sepakati: memilih solusi yang tepat memiliki dampak besar terhadap perluasan jangkauan pelanggan dan profitabilitas bisnis Anda.

Saat ini, terdapat banyak platform e-commerce; nama-nama seperti Magento, Wix, dan Shopify sudah sangat dikenal luas. Namun, tanpa disadari, telah muncul produk baru yang mulai membuat terobosan di industri e-commerce, yaitu Shopware.

Meskipun mungkin terasa relatif baru bagi kita, Shopware sebenarnya sudah ada sejak tahun 2000. Di beberapa negara Eropa, Shopware merupakan salah satu solusi terkemuka untuk bisnis toko daring, dan kini kehadirannya juga semakin meluas secara global.

Shopware adalah platform e-commerce yang bertujuan untuk mempermudah dan menyederhanakan proses pembuatan toko online. Dengan Shopware, pemilik toko tidak perlu memiliki server atau infrastruktur lain untuk mulai berjualan secara online. Pelaku usaha dapat memulai bisnis mereka menggunakan mesin virtual berbasis cloud, seperti SaaS atau PaaS. Platform e-commerce berbasis cloud, baik itu model On-Prem (Self-Hosted), PaaS, maupun SaaS dirancang khusus untuk membantu pedagang membangun dan mengembangkan toko online mereka.

Melalui Shopware, pedagang dapat dengan mudah membuat toko online yang terlihat profesional, layaknya hasil karya seorang programmer ahli. Pedagang dapat dengan mudah menjual produk, melakukan promosi, serta menarik pelanggan baru. Penjual dapat memanfaatkan alat desain bawaan platform atau merancang toko dari nol agar tampilannya unik dan menarik bagi pengunjung.

Dalam artikel ini, kita akan mempelajari cara menginstal dan mengonfigurasi Shopware pada server FreeBSD. Agar Shopware dapat berjalan dengan lancar, kita perlu menambahkan beberapa dependensi yang mencakup komponen pendukung seperti PHP dan database server MySQL.

Dalam artikel ini, kami mengasumsikan bahwa MySQL, Composer, apache24, dan PHP-FPM telah terinstal di server FreeBSD; oleh karena itu, kami tidak akan membahasnya di sini. Anda dapat membaca panduan instalasinya pada artikel kami sebelumnya.

1. Spesifikasi Sistem Yang Digunakan

  • OS: FreeBSD 13.2
  • IP address: 192.168.5.2
  • Hostname: ns3
  • Java version: openjdk17
  • Web server: apache24
  • Shopware version: Release v6.5.8.6
  • PHP version: PHP82
  • PHP-FPM
  • Composer: Recommended version: 2.0 or higher
  • Dependencies: php82-curl php82-dom php82-fileinfo php82-gd php82-iconv php82-intl php82-pecl-json_post php82-xmlwriter php82-mbstring php82-pdo php82-pdo_mysql php82-phar php82-simplexml php82-xml php82-zip php82-zlib pcre2 libxml2

2. Membuat Database untuk Shopware

Seperti halnya aplikasi berbasis web lainnya, Shopware memerlukan database untuk menyimpan semua informasi pengguna. Semua data yang dimasukkan oleh pengguna akan disimpan di dalam database Shopware. Seluruh tampilan produk yang Anda lihat di situs online Shopware berasal dari database backend.

Database yang didukung oleh Shopware adalah MariaDB dan MySQL. Dalam artikel ini, kami menggunakan database yang umum digunakan oleh pengguna, yaitu database server MySQL. Kami akan membuat pengguna MySQL baru dan database MySQL baru. Dengan perintah mysql, kita memulai sesi MySQL baru. Di dalam sesi MySQL ini, kita membuat database baru bernama shopware menggunakan kueri berikut.

root@localhost [(none)]> CREATE DATABASE shopware;
root@localhost [(none)]> CREATE USER 'usershopware'@'localhost' IDENTIFIED BY 'router123';
root@localhost [(none)]> GRANT ALL PRIVILEGES ON shopware.* TO 'usershopware'@'localhost';
root@localhost [(none)]> FLUSH PRIVILEGES;

Pada contoh skrip di atas, kita membuat sebuah basis data:

database name: shopware user: usershopware Password: router123 Host: localhost

Kemudian, Anda membuat satu lagi database baru bernama "shopwaredata".

root@localhost [(none)]> create database shopwaredata;
root@localhost [(none)]> GRANT ALL PRIVILEGES ON shopwaredata.* TO 'usershopware'@'localhost';
root@localhost [(none)]> FLUSH PRIVILEGES;

3. Install JAVA openjdk17

Shopware memiliki banyak fitur yang tersedia, dan fitur-fitur ini membutuhkan berbagai aplikasi pendukung, salah satunya adalah Java. Berkat aplikasi Java, Shopware menjadi aplikasi yang modern dan canggih.

Agar Shopware dapat berjalan dengan optimal di FreeBSD, kita perlu menginstal Java pada server FreeBSD tersebut. Jalankan perintah berikut untuk menginstal Java di FreeBSD.

root@ns3:~ # cd /usr/ports/java/openjdk17
root@ns3:/usr/ports/java/openjdk17 # make install clean

Setelah Anda selesai menginstal openjdk17, jalankan perintah di bawah ini.

root@ns3:~ # mount -t fdescfs fdesc /dev/fd
root@ns3:~ # mount -t procfs proc /proc

Kemudian, pada file /etc/fstab, ketik skrip berikut.

fdesc   /dev/fd         fdescfs         rw      0       0
proc    /proc           procfs          rw      0       0

Buatlah variabel JAVA_HOME, variabel ini akan mengarah ke lokasi tempat JDK atau JRE terinstal pada sistem FreeBSD. Anda perlu mengatur variabel lingkungan JAVA_HOME di dalam file /etc/csh.cshrc. Buka file csh.cshrc tersebut dan ketikkan skrip berikut ini.

setenv JAVA_VERSION "17.0+"
setenv JAVA_HOME /usr/local/openjdk17

Langkah berikutnya adalah membuka file .cshrc dan mengetikkan skrip seperti pada contoh di bawah ini. Kita menggunakan editor "ee".

root@ns3:~ # ee .cshrc
set path = ($JAVA_HOME/bin /sbin /bin /usr/sbin /usr/bin /usr/local/sbin /usr/local/bin $HOME/bin)

4. Apache24 configuration

Shopware menggunakan server web Apache untuk menampilkan informasi melalui peramban Google Chrome atau ponsel. Dengan bantuan Apache, pembeli dan pemilik toko dapat berinteraksi melalui peramban web. Untuk menarik pengunjung, Anda juga dapat menciptakan tampilan toko online yang artistik dan memikat.

Kami tidak akan membahas cara menginstal apache24. Hal yang akan dijelaskan dalam artikel ini adalah berkas konfigurasi httpd.conf. Konfigurasi dalam berkas ini sangat penting karena berfungsi menghubungkan Shopware dengan server web Apache.

Silakan buka berkas /usr/local/etc/apache24/httpd.conf, lalu ketikkan skrip di bawah ini ke dalam berkas tersebut.

Alias /shopware "/usr/local/www/shopware/"
<Directory "/usr/local/www/shopware">
Options Indexes FollowSymlinks MultiViews
    AllowOverride All
    Require all granted
</Directory>

Di dalam file /usr/local/etc/apache24/httpd.conf, Anda juga perlu mengaktifkan beberapa modul Apache. Aktifkan modul berikut ini di dalam file httpd.conf tersebut.

LoadModule negotiation_module libexec/apache24/mod_negotiation.so
LoadModule rewrite_module libexec/apache24/mod_rewrite.so
LoadModule headers_module libexec/apache24/mod_headers.so
LoadModule deflate_module libexec/apache24/mod_deflate.so

Kemudian, buka file /usr/local/etc/php.ini dan ubah nilai memorinya seperti pada skrip di bawah ini.

memory_limit = 512M
post_max_size = 32M
upload_max_filesize = 32M
display_errors = On
display_startup_errors = On

5. Instal Dependensi Shopware

Seperti yang telah dibahas sebelumnya, Shopware memiliki banyak dependensi. Semua dependensi ini akan menghasilkan file biner yang diperlukan untuk menjalankan Shopware.

Jika Anda tidak menginstal dependensi tersebut, jangan berharap dapat menjalankan Shopware. Di antara berbagai dependensi yang dibutuhkan Shopware, PHP adalah dependensi utama yang wajib Anda instal. Jalankan perintah berikut untuk menghasilkan file pustaka PHP.

root@ns3:~ # pkg install php82-curl php82-dom php82-fileinfo php82-gd php82-iconv php82-intl php82-pecl-json_post php82-xmlwriter php82-mbstring php82-pdo php82-pdo_mysql php82-phar php82-simplexml php82-xml php82-zip php82-mysqli php82-zlib pcre2 libxml2

Setelah itu, lanjutkan dengan menginstal ioncube.

root@ns3:~ # cd /usr/ports/devel/ioncube
root@ns3:/usr/ports/devel/ioncube # make install clean

Langkah berikutnya adalah menginstal OpenSearch. OpenSearch merupakan fork dari Elasticsearch yang dirancang sebagai mesin pencari terdistribusi dan berbasis RESTful yang dibangun di atas Apache Lucene.

root@ns3:/usr/ports/devel/ioncube # cd /usr/ports/textproc/opensearch
root@ns3:/usr/ports/textproc/opensearch # make install clean

<h2 title="Menginstal Shopware 6>6. Menginstal Shopware 6</h2>

Setelah Anda selesai mengonfigurasi semua aplikasi yang disebutkan di atas, kini saatnya memulai instalasi Shopware. Kita akan menginstalnya di /usr/local/www, yang merupakan direktori default Apache. Karena Shopware dibuat menggunakan PHP, kita akan menginstalnya menggunakan Composer.

Sebagai langkah awal instalasi, buatlah proyek Shopware baru dengan menjalankan perintah di bawah ini.

root@ns3:~ # cd /usr/local/www
root@ns3:/usr/local/www # composer create-project shopware/production shopware

Setelah Anda membuat proyek Shopware menggunakan Composer, buatlah file .env.local untuk menghubungkan Shopware ke database server MySQL. Anda dapat melakukannya dengan mudah dengan menjalankan perintah penyalinan berikut.

root@ns3:/usr/local/www # cd shopware
root@ns3:/usr/local/www/shopware # cp -R .env .env.local

Buka file /usr/local/www/shopware/.env.local, cari skrip di bawah ini.

DATABASE_URL=mysql://root:root@localhost/shopware

Kemudian, Anda menggantinya dengan skrip di bawah ini.

DATABASE_URL=mysql://usershopware:router123@localhost:3306/shopware

Perhatikan skrip pengganti tersebut; Anda mengambil isi skrip dari database MySQL yang telah dibuat sebelumnya. Pastikan Anda tidak salah memasukkan kata sandi pengguna atau database. Setelah itu, jalankan perintah berikut untuk menginstal Shopware.

root@ns3:/usr/local/www/shopware # bin/console system:install --basic-setup

Agar dapat menjalankan Shopware secara optimal, Anda perlu menambahkan beberapa aplikasi lain, seperti templat dan sebagainya. Anda dapat menjalankan perintah di bawah ini.

root@ns3:/usr/local/www/shopware # composer require --dev shopware/dev-tools
root@ns3:/usr/local/www/shopware # composer require --dev symfony/profiler-pack
root@ns3:/usr/local/www/shopware # composer require paas
root@ns3:/usr/local/www/shopware # composer require fastly

Selain itu, Anda dapat menginstal Symfony Flex Anda perlu menjalankan perintah berikut dan mengizinkan kedua plugin Composer baru tersebut.

root@ns3:/usr/local/www/shopware # composer require symfony/flex:~2 symfony/runtime:~6.2
root@ns3:/usr/local/www/shopware # composer recipe:install --force --reset

Langkah terakhir, Anda memperbarui Shopware.

7. Menjalankan Shopware

Sebelum menjalankan Shopware, jalankan perintah berikut untuk memberikan kepemilikan dan izin akses pada direktori /usr/local/www/shopware.

root@ns3:/usr/local/www/shopware # chown -R www:www /usr/local/www/shopware
root@ns3:/usr/local/www/shopware # chmod -R 775 /usr/local/www/shopware

Shopware hanya dapat dijalankan di peramban web. Sebelum membuka peramban web, mulai ulang server web apache24.

root@ns3:~ # service apache24 restart

Silakan buka peramban web Google Chrome atau peramban lainnya, lalu ketik "http://192.168.5.2/shopware/public/installer" pada bilah alamat Google Chrome. Tampilannya akan terlihat seperti gambar di bawah ini.

Shopware Ecommerce Platform
Tampilan Awal Dashboard Shopware Ecommerce Platform

Selain sebagai platform e-commerce sumber terbuka (open source), Shopware dikenal sangat fleksibel karena berbasis cloud dan mendukung self-hosting, serta mencakup segala hal yang diperlukan untuk membuat toko online guna melakukan promosi produk, menjual produk, dan menganalisis laba-rugi. Shopware adalah solusi e-commerce yang mengubah pengunjung menjadi pelanggan dan dirancang untuk membantu pedagang memulai serta mengelola toko online.