Cómo instalar EPESI CRM en Ubuntu 18.04 LTS
EPESI es una aplicación web gratuita y de código abierto y una de las soluciones multiusuario más sofisticadas para gestionar información empresarial como CRM. Es una aplicación CRM totalmente funcional que puede utilizarse para almacenar, organizar, acceder y compartir registros empresariales. Está construida sobre un framework PHP/Ajax, por lo que puedes modificarla y desarrollarla a tu gusto.
Características
- Sencillo, ligero y rápido.
- Interfaz de usuario intuitiva basada en web.
- Notas y archivos adjuntos ilimitados.
- Cliente de correo electrónico Roundcube integrado.
- Teléfono y seguimiento de proyectos.
- Contactos compartidos, calendario, tareas, llamadas telefónicas.
En este tutorial, aprenderemos a instalar EPESI en un servidor Ubuntu 18.04.
Requisitos
- Un servidor con Ubuntu 18.04.
- Un usuario no root con privilegios sudo.
Cómo empezar
Antes de empezar, tendrás que actualizar tu sistema con la última versión. Puedes hacerlo ejecutando el siguiente comando:
sudo apt-get update -y sudo apt-get upgrade -y
Una vez actualizado tu sistema, reinícialo para aplicar los cambios.
Instalar el servidor LAMP
En primer lugar, tendrás que instalar en tu sistema el servidor web Apache, el servidor MariaDB, PHP y otros módulos PHP necesarios. Puedes instalarlos todos ejecutando el siguiente comando:
sudo apt-get install apache2 mariadb-server php7.2 libapache2-mod-php7.2 php7.2-common php7.2-mbstring php7.2-xmlrpc php7.2-soap php7.2-gd php7.2-xml php7.2-intl php7.2-mysql php7.2-cli php7.2-ldap php7.2-zip php7.2-curl php7.2-imap unzip -y
A continuación, tendrás que hacer algunos cambios en el archivo de configuración por defecto de PHP:
sudo nano /etc/php/7.2/apache2/php.ini
Realiza los siguientes cambios:
memory_limit = 256M upload_max_filesize = 64M post_max_size = 64M max_execution_time = 30 max_input_vars = 1500 date.timezone = Asia/Kolkata
Guarda y cierra el archivo. A continuación, inicia el servicio Apache y MariaDB y habilítalos para que se inicien al arrancar el sistema con el siguiente comando:
sudo systemctl start apache2 sudo systemctl enable apache2 sudo systemctl start mariadb sudo systemctl enable mariadb
Configurar MariaDB
Por defecto, MariaDB no está protegida. Por lo tanto, primero tendrás que asegurarla. Puedes asegurarlo ejecutando el siguiente comando:
sudo mysql_secure_installation
Este comando establecerá la contraseña de root, eliminará el usuario anónimo, no permitirá el inicio de sesión remoto de root y eliminará la base de datos de prueba, como se muestra a continuación:
Enter current password for root (enter for none): Set root password? [Y/n]: N Remove anonymous users? [Y/n]: Y Disallow root login remotely? [Y/n]: Y Remove test database and access to it? [Y/n]: Y Reload privilege tables now? [Y/n]: Y
Una vez asegurada MariaDB, inicia sesión en el intérprete de comandos de MariaDB:
sudo mysql -u root
Introduce tu contraseña de root cuando se te pida. A continuación, crea una base de datos y un usuario para EPESI con el siguiente comando:
MariaDB [(none)]> CREATE DATABASE epesidb; MariaDB [(none)]> CREATE USER 'epesi'@'localhost' IDENTIFIED BY 'mypassword';
Sustituye la cadena ‘mypassword’ por una contraseña segura. A continuación, concede privilegios a la base de datos EPESI con el siguiente comando:
MariaDB [(none)]> GRANT ALL PRIVILEGES ON epesidb.* TO 'epesi'@'localhost' IDENTIFIED BY 'mypassword';
Sustituyelacadena ‘mypassword’ por una contraseña segura.A continuación, vacía los privilegios con el siguiente comando:
MariaDB [(none)]> FLUSH PRIVILEGES;
A continuación, sal de la consola MariaDB con el siguiente comando:
MariaDB [(none)]> exit
Instalar EPESI CMS
En primer lugar, tendrás que descargar la última versión de EPESI del repositorio Git.
Ve al directorio /tmp:
cd /tmp
Puedes descargarlo con el siguiente comando:
git clone https://github.com/Telaxus/EPESI.git
A continuación, copia el directorio EPESI al directorio raíz de Apache con el siguiente comando:
sudo cp -r EPESI /var/www/html/epesi
A continuación, tendrás que instalar Composer en tu sistema. Puedes instalarlo ejecutando el siguiente comando:
curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer
A continuación, cambia el directorio a epesi e instala las dependencias necesarias utilizando Composer:
cd /var/www/html/epesi sudo composer install
Salida:
Deprecation warning: require.phpFastCache/phpFastCache is invalid, it should not contain uppercase characters. Please use phpfastcache/phpfastcache instead. Make sure you fix this as Composer 2.0 will error. Do not run Composer as root/super user! See https://getcomposer.org/root for details Loading composer repositories with package information Installing dependencies (including require-dev) from lock file Package operations: 84 installs, 0 updates, 0 removals - Installing enyo/dropzone (v5.5.0): Downloading (100%) - Installing ezyang/htmlpurifier (v4.10.0): Downloading (100%) - Installing fzaninotto/faker (v1.8.0): Downloading (100%) - Installing ifsnop/mysqldump-php (dev-master 3c5ccfe): Cloning 3c5ccfea31 from cache - Installing jakub-onderka/php-console-color (v0.2): Downloading (100%) - Installing memio/model (2.0.4): Downloading (100%) - Installing memio/validator (v2.0.3): Downloading (100%) - Installing symfony/polyfill-ctype (v1.10.0): Downloading (100%) - Installing twig/twig (v1.36.0): Downloading (100%) - Installing memio/pretty-printer (2.0.3): Downloading (100%) - Installing memio/twig-template-engine (v2.0.3): Downloading (100%) - Installing memio/linter (v2.0.3): Downloading (100%) - Installing memio/memio (v2.0.0): Downloading (100%) - Installing moneyphp/money (v3.2.0): Downloading (100%) - Installing phpdocumentor/reflection-docblock (2.0.5): Downloading (100%) - Installing psr/cache (1.0.1): Downloading (100%) - Installing predis/predis (v1.1.1): Downloading (100%) - Installing phpfastcache/phpssdb (1.0.1): Downloading (100%) - Installing phpfastcache/phpfastcache (5.0.21): Downloading (100%) - Installing psr/container (1.0.0): Downloading (100%) - Installing pimple/pimple (v3.2.3): Downloading (100%) - Installing symfony/polyfill-php72 (v1.10.0): Downloading (100%) - Installing symfony/polyfill-mbstring (v1.10.0): Downloading (100%) - Installing symfony/var-dumper (v4.0.15): Downloading (100%) - Installing psr/log (1.1.0): Downloading (100%) - Installing symfony/debug (v3.0.9): Downloading (100%) - Installing symfony/console (v2.8.49): Downloading (100%) - Installing nikic/php-parser (v3.1.5): Downloading (100%) - Installing jakub-onderka/php-console-highlighter (v0.4): Downloading (100%) - Installing dnoegel/php-xdg-base-dir (0.1): Downloading (100%) - Installing psy/psysh (v0.9.9): Downloading (100%) - Installing ircmaxell/password-compat (v1.0.4): Downloading (100%) - Installing symfony/polyfill-php55 (v1.10.0): Downloading (100%) - Installing symfony/polyfill-php54 (v1.10.0): Downloading (100%) - Installing symfony/http-foundation (v2.8.49): Downloading (100%) - Installing tecnickcom/tcpdf (6.2.26): Downloading (100%) - Installing symfony/finder (v4.2.1): Downloading (100%) - Installing sebastian/version (2.0.1): Downloading (100%) - Installing sebastian/resource-operations (2.0.1): Downloading (100%) - Installing sebastian/recursion-context (3.0.0): Downloading (100%) - Installing sebastian/object-reflector (1.1.1): Downloading (100%) - Installing sebastian/object-enumerator (3.0.3): Downloading (100%) - Installing sebastian/global-state (2.0.0): Downloading (100%) - Installing sebastian/exporter (3.1.0): Downloading (100%) - Installing sebastian/environment (4.0.1): Downloading (100%) - Installing sebastian/diff (3.0.1): Downloading (100%) - Installing sebastian/comparator (3.0.2): Downloading (100%) - Installing phpunit/php-timer (2.0.0): Downloading (100%) - Installing phpunit/php-text-template (1.2.1): Downloading (100%) - Installing phpunit/php-file-iterator (2.0.2): Downloading (100%) - Installing theseer/tokenizer (1.1.0): Downloading (100%) - Installing sebastian/code-unit-reverse-lookup (1.0.1): Downloading (100%) - Installing phpunit/php-token-stream (3.0.1): Downloading (100%) - Installing phpunit/php-code-coverage (6.1.4): Downloading (100%) - Installing doctrine/instantiator (1.1.0): Downloading (100%) - Installing phpspec/prophecy (1.8.0): Downloading (100%) - Installing phar-io/version (2.0.1): Downloading (100%) - Installing phar-io/manifest (1.0.3): Downloading (100%) - Installing myclabs/deep-copy (1.8.1): Downloading (100%) - Installing phpunit/phpunit (7.5.1): Downloading (100%) - Installing jakubledl/dissect (v1.0.1): Downloading (100%) - Installing goaop/parser-reflection (1.4.1): Downloading (100%) - Installing doctrine/cache (v1.8.0): Downloading (100%) - Installing doctrine/lexer (v1.0.1): Downloading (100%) - Installing doctrine/annotations (v1.6.0): Downloading (100%) - Installing goaop/framework (2.2.0): Downloading (100%) - Installing codeception/aspect-mock (3.0.2): Downloading (100%) - Installing symfony/yaml (v3.3.18): Downloading (100%) - Installing symfony/contracts (v1.0.2): Downloading (100%) - Installing symfony/event-dispatcher (v4.2.1): Downloading (100%) - Installing symfony/dom-crawler (v4.2.1): Downloading (100%) - Installing symfony/css-selector (v4.2.1): Downloading (100%) - Installing symfony/browser-kit (v4.2.1): Downloading (100%) - Installing ralouphie/getallheaders (2.0.5): Downloading (100%) - Installing psr/http-message (1.0.1): Downloading (100%) - Installing guzzlehttp/psr7 (1.5.2): Downloading (100%) - Installing guzzlehttp/promises (v1.3.1): Downloading (100%) - Installing guzzlehttp/guzzle (6.3.3): Downloading (100%) - Installing symfony/process (v4.2.1): Downloading (100%) - Installing facebook/webdriver (1.6.0): Downloading (100%) - Installing codeception/stub (2.0.4): Downloading (100%) - Installing codeception/phpunit-wrapper (7.6.0): Downloading (100%) - Installing behat/gherkin (v4.5.1): Downloading (100%) - Installing codeception/codeception (2.5.2): Downloading (100%) moneyphp/money suggests installing ext-bcmath (Calculate without integer limits) moneyphp/money suggests installing ext-gmp (Calculate without integer limits) moneyphp/money suggests installing florianv/exchanger (Exchange rates library for PHP) moneyphp/money suggests installing florianv/swap (Exchange rates library for PHP) moneyphp/money suggests installing psr/cache-implementation (Used for Currency caching) phpdocumentor/reflection-docblock suggests installing dflydev/markdown (~1.0) phpdocumentor/reflection-docblock suggests installing erusev/parsedown (~1.0) predis/predis suggests installing ext-phpiredis (Allows faster serialization and deserialization of the Redis protocol) phpfastcache/phpfastcache suggests installing ext-apc (*) phpfastcache/phpfastcache suggests installing ext-memcache (*) phpfastcache/phpfastcache suggests installing ext-memcached (*) phpfastcache/phpfastcache suggests installing ext-predis (*) phpfastcache/phpfastcache suggests installing ext-redis (*) phpfastcache/phpfastcache suggests installing ext-sqlite (*) symfony/console suggests installing psr/log-implementation (For using the console logger) psy/psysh suggests installing ext-pdo-sqlite (The doc command requires SQLite to work.) psy/psysh suggests installing hoa/console (A pure PHP readline implementation. You'll want this if your PHP install doesn't already support readline or libedit.) sebastian/global-state suggests installing ext-uopz (*) phpunit/php-code-coverage suggests installing ext-xdebug (^2.6.0) phpunit/phpunit suggests installing ext-xdebug (*) phpunit/phpunit suggests installing phpunit/php-invoker (^2.0) doctrine/cache suggests installing alcaeus/mongo-php-adapter (Required to use legacy MongoDB driver) symfony/contracts suggests installing symfony/cache-contracts-implementation symfony/contracts suggests installing symfony/service-contracts-implementation symfony/contracts suggests installing symfony/translation-contracts-implementation symfony/event-dispatcher suggests installing symfony/dependency-injection symfony/event-dispatcher suggests installing symfony/http-kernel facebook/webdriver suggests installing ext-SimpleXML (For Firefox profile creation) codeception/codeception suggests installing aws/aws-sdk-php (For using AWS Auth in REST module and Queue module) codeception/codeception suggests installing codeception/phpbuiltinserver (Start and stop PHP built-in web server for your tests) codeception/codeception suggests installing codeception/specify (BDD-style code blocks) codeception/codeception suggests installing codeception/verify (BDD-style assertions) codeception/codeception suggests installing flow/jsonpath (For using JSONPath in REST module) codeception/codeception suggests installing league/factory-muffin (For DataFactory module) codeception/codeception suggests installing league/factory-muffin-faker (For Faker support in DataFactory module) codeception/codeception suggests installing phpseclib/phpseclib (for SFTP option in FTP Module) codeception/codeception suggests installing stecman/symfony-console-completion (For BASH autocompletion) codeception/codeception suggests installing symfony/phpunit-bridge (For phpunit-bridge support) Generating autoload files Do not run Composer as root/super user! See https://getcomposer.org/root for details Loading composer repositories with package information Installing dependencies (including require-dev) from lock file Package operations: 1 install, 0 updates, 0 removals - Installing tedivm/fetch (v0.7.1): Downloading (100%) Generating autoload files Do not run Composer as root/super user! See https://getcomposer.org/root for details Loading composer repositories with package information Installing dependencies (including require-dev) from lock file Package operations: 1 install, 0 updates, 0 removals - Installing phpoffice/phpexcel (1.8.1): Downloading (100%) Generating autoload files Do not run Composer as root/super user! See https://getcomposer.org/root for details Loading composer repositories with package information Updating dependencies (including require-dev) Nothing to install or update Writing lock file Generating autoload files Do not run Composer as root/super user! See https://getcomposer.org/root for details Generated autoload files containing 14 classes
Una vez instaladas todas las dependencias necesarias, concede los permisos adecuados al directorio epesi con el siguiente comando:
sudo chown -R www-data:www-data /var/www/html/epesi sudo chmod -R 775 /var/www/html/epesi
Configurar Apache para EPESI
A continuación, tendrás que crear un archivo de host virtual apache para EPESI. Puedes hacerlo creando el archivo epesi.conf:
sudo nano /etc/apache2/sites-available/epesi.conf
Añade las siguientes líneas:
<VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /var/www/html/epesi ServerName example.com ServerAlias www.example.com <Directory /var/www/html/epesi/> Options +FollowSymlinks AllowOverride All Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/epesi_error.log CustomLog ${APACHE_LOG_DIR}/epesi_access.log combined </VirtualHost>
Guarda y cierra el archivo. A continuación, habilita el archivo de host virtual EPESI con el siguiente comando:
sudo a2ensite epesi
A continuación, habilita el módulo de reescritura de Apache y reinicia el servidor web Apache para aplicar todos los cambios:
sudo a2enmod rewrite sudo systemctl restart apache2
Una vez que hayas terminado, puedes pasar al siguiente paso.
Accede a la interfaz web de EPESI CRM
EPESI CRM ya está instalado y configurado, es hora de acceder a la interfaz web de EPESI CRM.
Abre tu navegador web y escribe la URL http://example.com. Se te redirigirá a la siguiente página:
Elige tu idioma, deberías ver la siguiente página:
Ahora, acepta el acuerdo de Licencia y pulsa el botón Siguiente. Deberías ver la siguiente página:
Ahora, ignora el error y pulsa el botón Aceptar. Deberías ver la siguiente página:
Ahora, proporciona todos los datos necesarios, como el nombre de la base de datos, el nombre de usuario de la base de datos y la contraseña. A continuación, haz clic en el botón Siguiente. Deberías ver la página siguiente:
Ahora, haz clic en el botón Continuar con la instalación. Deberías ver la siguiente página:
Ahora, proporciona tu nombre de usuario y contraseña de administrador. A continuación, pulsa el botón Siguiente. Deberías ver la siguiente página:
Ahora, selecciona tu configuración de Correo y pulsa el botón Siguiente. Deberías ver la página siguiente:
Ahora, haz clic en el botón Siguiente. Deberías ver la página siguiente:
Ahora, indica tu formato de fecha y hora y el país. A continuación, haz clic en el botón Aceptar. deberías ver la página siguiente:
Ahora, proporciona el nombre de tu Empresa, tu nombre y dirección, País y Ciudad. A continuación, haz clic en el botón Aceptar. Una vez que la instalación se haya completado con éxito. Deberías ver la siguiente página:
Enhorabuena! has instalado con éxito EPESI CRM en tu servidor. Ahora puedes alojar fácilmente tu propio EPESI CRM en tu entorno de producción.