Cómo instalar OpenMRS (Open Medical Record System) en Debian 11
OpenMRS, siglas de «Open Medical Record System», es un sistema de almacenamiento y recuperación de historiales médicos electrónicos (EMR) gratuito, de código abierto y eficaz. Se utiliza para tratar a millones de pacientes de VIH/SIDA y tuberculosis (TB) en el mundo en desarrollo. Su principal objetivo es desarrollar programas informáticos para prestar asistencia sanitaria en los países en desarrollo. Permite el intercambio de datos de pacientes con otros sistemas de información médica. Está escrito en Java y proporciona un panel de control web fácil de usar para gestionar historiales médicos electrónicos a través del navegador web.
En este post, te mostraremos cómo instalar el sistema de historiales médicos OpenMRS en Debian 11.
Requisitos previos
- Un servidor que ejecute Debian 11.
- Una contraseña de root configurada en el servidor.
Instalar Java 8
OpenMRS es una aplicación basada en Java y sólo es compatible con la versión 8 de Java. Por tanto, necesitarás instalar Java 8 en tu servidor. Por defecto, Java 8 no está incluido en el repositorio por defecto de Debian 11. Así que tendrás que descargarlo e instalarlo desde su web oficial.
En primer lugar, crea un directorio para Java utilizando el siguiente comando:
mkdir -p /usr/lib/jvm/
A continuación, extrae el archivo fuente de Java descargado con el siguiente comando:
tar -zxvf jdk-8u281-linux-x64.tar.gz -C /usr/lib/jvm/
A continuación, instala Java 8 utilizando el siguiente comando:
update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.8.*/bin/java 1
Una vez instalado Java, verifica la versión de Java utilizando el siguiente comando:
java -version
Obtendrás la siguiente salida:
java version "1.8.0_281" Java(TM) SE Runtime Environment (build 1.8.0_281-b09) Java HotSpot(TM) 64-Bit Server VM (build 25.281-b09, mixed mode)
Instalar MySQL Server 5.6
OpenMRS sólo es compatible con la versión 5.6 de MySQL. Por defecto, MySQL 5.6 no está disponible en el repositorio por defecto de Debian 11. Así que tendrás que instalarlo desde el código fuente.
En primer lugar, crea un usuario y un grupo para MySQL utilizando el siguiente comando:
groupadd mysql useradd -g mysql mysql
A continuación, descarga el código fuente de MySQL 5.6 con el siguiente comando:
wget https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.46-linux-glibc2.12-x86_64.tar.gz
Una vez descargado el MySQL, extráelo con el siguiente comando:
tar -xvf mysql-5.6.46-linux-glibc2.12-x86_64.tar.gz
A continuación, mueve el directorio extraído a /usr/local con el siguiente comando:
mv mysql-5.6.46-linux-glibc2.12-x86_64 /usr/local/mysql
A continuación, navega hasta el directorio /usr/local y establece la propiedad adecuada con el siguiente comando:
cd /usr/local/mysql chown -R mysql:mysql *
A continuación, instala las dependencias necesarias con el siguiente comando:
apt-get install libaio1 libncurses5 libnuma-dev -y
A continuación, instala MySQL con el siguiente comando:
scripts/mysql_install_db --user=mysql
Obtendrás la siguiente salida:
You can start the MySQL daemon with: cd . ; ./bin/mysqld_safe & You can test the MySQL daemon with mysql-test-run.pl cd mysql-test ; perl mysql-test-run.pl Please report any problems at http://bugs.mysql.com/ The latest information about MySQL is available on the web at http://www.mysql.com Support MySQL by buying support/licenses at http://shop.mysql.com New default config file was created as ./my.cnf and will be used by default by the server when you start it. You may edit this file to change server settings
A continuación, asigna la propiedad adecuada al directorio MySQL y al directorio de datos:
chown -R root . chown -R mysql data
A continuación, copia el archivo de configuración de MySQL y el archivo de servicio:
cp support-files/my-default.cnf /etc/my.cnf cp support-files/mysql.server /etc/init.d/mysql.server
A continuación, inicia el servicio MySQL en modo seguro:
bin/mysqld_safe --user=mysql &
A continuación, establece la contraseña raíz de MySQL con el siguiente comando:
bin/mysqladmin -u root password newpassword
A continuación, crea un enlace simbólico del binario mysql con el siguiente comando:
ln -s /usr/local/mysql/bin/mysql /usr/local/bin/mysql
Por último, reinicia tu servidor con el siguiente comando:
reboot
Tras el reinicio del sistema, inicia el servicio MySQL y habilítalo para que se inicie al reiniciar el sistema:
/etc/init.d/mysql.server start update-rc.d -f mysql.server defaults
También puedes comprobar el estado del servicio MySQL con el siguiente comando:
/etc/init.d/mysql.server status
Obtendrás la siguiente salida:
? mysql.server.service - LSB: start and stop MySQL Loaded: loaded (/etc/init.d/mysql.server; generated) Active: active (running) since Fri 2022-03-25 14:35:35 UTC; 5s ago Docs: man:systemd-sysv-generator(8) Process: 415 ExecStart=/etc/init.d/mysql.server start (code=exited, status=0/SUCCESS) Tasks: 22 (limit: 4679) Memory: 460.5M CPU: 826ms CGroup: /system.slice/mysql.server.service ??422 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/debian11.pid ??530 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/p… Mar 25 14:35:34 debian11 systemd[1]: Starting LSB: start and stop MySQL... Mar 25 14:35:34 debian11 mysql.server[415]: Starting MySQL Mar 25 14:35:35 debian11 mysql.server[415]: .. Mar 25 14:35:35 debian11 systemd[1]: Started LSB: start and stop MySQL.
Una vez que hayas terminado, puedes pasar al siguiente paso.
Instalar Tomcat 7
A continuación, tendrás que instalar Tomcat para desplegar OpenMRS.
En primer lugar, crea un usuario y un grupo para Tomcat con el siguiente comando:
groupadd tomcat useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat
A continuación, descarga Tomcat 7 con el siguiente comando:
wget https://archive.apache.org/dist/tomcat/tomcat-7/v7.0.109/bin/apache-tomcat-7.0.109.tar.gz
A continuación, crea un directorio para Tomcat y extrae el archivo descargado al directorio /opt/tomcat:
mkdir /opt/tomcat tar -xvzf apache-tomcat-7.0.109.tar.gz -C /opt/tomcat/ --strip-components=1
A continuación, navega hasta el directorio /opt/tomcat y establece los permisos y la propiedad adecuados:
cd /opt/tomcat chgrp -R tomcat /opt/tomcat chmod -R g+r conf chmod g+x conf chown -R tomcat webapps/ work/ temp/ logs/
Una vez que hayas terminado, puedes pasar al siguiente paso.
Crear un archivo de servicio Systemd para Tomcat
A continuación, tendrás que crear un archivo de servicio systemd para gestionar el servicio Tomcat. Puedes crearlo con el siguiente comando:
nano /etc/systemd/system/tomcat.service
Añade las siguientes líneas:
[Unit] Description=Apache Tomcat Web Application Container After=network.target [Service] Type=forking Environment=JAVA_HOME=/usr/lib/jvm/jdk1.8.0_281 Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid Environment=CATALINA_HOME=/opt/tomcat Environment=CATALINA_BASE=/opt/tomcat Environment=’CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC’ ExecStart=/opt/tomcat/bin/startup.sh ExecStop=/opt/tomcat/bin/shutdown.sh User=tomcat Group=tomcat UMask=0007 RestartSec=10 Restart=always [Install] WantedBy=multi-user.target
Guarda y cierra el archivo, luego vuelve a cargar el demonio systemd para aplicar los cambios:
systemctl daemon-reload
A continuación, inicia el servicio Tomcat con el siguiente comando:
systemctl start tomcat
Ahora puedes comprobar el estado del servicio Tomcat con el siguiente comando:
systemctl status tomcat
Obtendrás la siguiente salida:
? tomcat.service - Apache Tomcat Web Application Container Loaded: loaded (/etc/systemd/system/tomcat.service; disabled; vendor preset: enabled) Active: active (running) since Fri 2022-03-25 14:38:45 UTC; 5s ago Process: 648 ExecStart=/opt/tomcat/bin/startup.sh (code=exited, status=0/SUCCESS) Main PID: 655 (java) Tasks: 28 (limit: 4679) Memory: 136.3M CPU: 4.124s CGroup: /system.slice/tomcat.service ??655 /usr/lib/jvm/jdk1.8.0_281/bin/java -Djava.util.logging.config.file=/opt/tomcat/conf/logging.properties -Djava.util.logging> Mar 25 14:38:45 debian11 systemd[1]: Starting Apache Tomcat Web Application Container... Mar 25 14:38:45 debian11 startup.sh[648]: Tomcat started. Mar 25 14:38:45 debian11 systemd[1]: Started Apache Tomcat Web Application Container.
En este punto, Tomcat está iniciado y escucha en el puerto 8080.
Instalar OpenMRS
En primer lugar, crea un directorio para OpenMRS y establece la propiedad adecuada con el siguiente comando:
mkdir /var/lib/OpenMRS chown -R tomcat:tomcat /var/lib/OpenMRS
A continuación, descarga la última versión de OpenMRS con el siguiente comando:
wget https://sourceforge.net/projects/openmrs/files/releases/OpenMRS_Platform_2.5.0/openmrs.war
Una vez finalizada la descarga, copia el archivo descargado en el directorio webapps de Tomcat:
cp openmrs.war /opt/tomcat/webapps/
A continuación, cambia la propiedad del archivo openmrs.war a tomcat:
chown -R tomcat:tomcat /opt/tomcat/webapps/openmrs.war
Una vez que hayas terminado, puedes pasar al siguiente paso.
Accede al Asistente de Instalación de OpenMRS
Ahora, abre tu navegador web y accede al asistente de instalación web de OpenMRS utilizando la URL http://your-server-ip:8080/openmrs. Deberías ver la pantalla de selección de idioma de OpenMRS:
Selecciona tu idioma y pulsa el botón =>. Deberías ver la pantalla Tipo de instalación.
Selecciona el tipo de instalación que deseas y pulsa el botón =>. Deberías ver la siguiente pantalla:
Indica tu contraseña de root de MySQL, anota la contraseña de admin y pulsa el botón =>. Deberías ver la siguiente pantalla:
Pulsa el botón => para crear una base de datos para OpenMRS y completar la instalación.
Ahora, abre tu navegador web y accede a la interfaz de administración de OpenMRS utilizando la URL http://your-server-ip:8080/openmrs. Deberías ver la pantalla de inicio de sesión de OpenMRS:
Introduce el nombre de usuario por defecto como admin y la contraseña como Admin123, luego haz clic en el botón INICIAR S ESIÓN. Deberías ver el panel de control de OpenMRS en la siguiente pantalla:
Conclusión
Enhorabuena! has instalado correctamente OpenMRS en Debian 11. Ahora puedes almacenar y gestionar fácilmente historiales médicos electrónicos a través de un navegador web. No dudes en preguntarme si tienes alguna duda.