OpenEMRインストール · 2 min read · Sep 08, 2025

Ubuntu 24.04サーバーにOpenEMRをインストールする方法

OpenEMRは、オープンソースの健康記録および医療業務管理ソリューションです。完全に統合された電子健康記録と業務管理、スケジューリング、電子請求、および国際化サポートを提供します。OpenEMRはONC認証を受けており、これはOpenEMRが健康情報技術の国家調整官室(ONC)の基準を満たしていることを意味します。

このガイドでは、LEMPスタック(Linux、Nginx、MariaDB、PHP-FPM)を使用してUbuntu 24.04サーバーにOpenEMRをインストールする方法を示します。また、Let’s Encryptを使用してOpenEMRをHTTPSで保護し、UFW(Uncomplicated Firewall)を介してHTTPおよびHTTPSポートを開く方法も示します。

前提条件

このガイドを始める前に、以下のものを用意してください:

  • Ubuntu 24.04サーバー
  • 管理者権限を持つ非ルートユーザー
  • サーバーのIPアドレスを指すドメイン名

LEMP依存関係のインストール

OpenEMRは、PHPとMySQLで書かれたウェブベースのアプリケーションです。インストールするには、PHPとMySQLの両方がインストールされていることを確認する必要があります。このガイドでは、LEMPスタック(Linux、Nginx、MariaDB、PHP)でOpenEMRを実行します。したがって、今のところ、APTリポジトリを介してこれらのパッケージをインストールします。

まず、以下の「apt」コマンドを実行して、Ubuntuパッケージインデックスを更新し、LEMPスタックパッケージ(Linux、Nginx、MariaDB、PHP-FPM)をインストールします。インストールを確認するために「Y」を入力します。

sudo apt update  
sudo apt install nginx mariadb-server php-fpm php-mysql php-bcmath php-xml php-zip php-curl php-mbstring php-gd php-tidy php-intl php-cli php-soap imagemagick libtiff-tools php-ldap

install deps

インストールが完了したら、以下の「systemctl」コマンドを使用して「nginx」サービスのステータスを確認します。Nginxが実行中で有効になっていることを確認してください。

sudo systemctl is-enabled nginx  
sudo systemctl status nginx

check nginx

次に、以下のコマンドを使用して「mariadb」サービスを確認します。MariaDBサーバーが実行中で、Ubuntuサーバーで有効になっていることがわかります。

sudo systemctl is-enabled mariadb  
sudo systemctl status mariadb

check mariadb

最後に、以下のコマンドで「php8.3-fpm」サービスを確認します。PHP-FPMサービスが稼働していることがわかります。

sudo systemctl is-enabled php8.3-fpm  
sudo systemctl status php8.3-fpm

check php-fpm

PHP-FPMの設定

LEMPスタックがインストールされたら、「php.ini」を編集してPHP-FPMのインストールを設定し、PHP-FPMサービスを再起動して変更を適用します。

php.ini」ファイルを「nano」エディタで編集します。

sudo nano /etc/php/8.3/fpm/php.ini

以下の設定にデフォルト構成を変更します。「memory_limit」を現在のRAMに合わせて調整してください。

max_execution_time = 60  
max_input_time = -1  
memory_limit = 512M  
post_max_size = 30M  
upload_max_filesize = 30M  
max_input_vars = 3000  
mysqli.allow_local_infile = On

ファイルを保存し、編集が完了したらエディタを終了します。

次に、以下の「chgrp」コマンドを実行して「/var/lib/php/sessions」ディレクトリの所有権を「www-data」ユーザーに変更します。

sudo chgrp -R www-data /var/lib/php/sessions

最後に、以下のコマンドで「php8.3-fpm」サービスを再起動します。これにより、PHP-FPMのインストールに変更が適用されます。

sudo systemctl restart php8.3-fpm

MariaDBサーバーの設定

PHPが設定されたので、MariaDBサーバーを設定し、OpenEMR用の新しいデータベースを作成します。このセクションでは、「mariadb-secure-installation」ユーティリティを使用してMariaDBサーバーを保護し、「mariadb」クライアントを介して新しいデータベースとユーザーを作成します。

まず、以下の「mariadb-secure-installation」コマンドを実行してMariaDBサーバーを保護します。

sudo mariadb-secure-installation

次に、以下の設定について尋ねられます:

  • ENTERを押してMariaDBサーバーの設定を続行します
  • MariaDBのルートパスワードを設定するために「Y」を入力し、パスワードを入力して繰り返します
  • root」ユーザーのリモートログインを無効にするために「Y」を入力します
  • データベース「test」とその権限を削除するために「Y」を入力します
  • 設定を完了するために「Y」を入力します

MariaDBサーバーが保護されたら、OpenEMRインストールで使用される新しいデータベースとユーザーを作成する必要があります。

以下の「mariadb」コマンドを使用してMariaDBサーバーにログインします。プロンプトが表示されたら、MariaDBのルートパスワードを入力します。

sudo mariadb -u root -p

以下のクエリを実行して、OpenEMR用の新しいデータベースとユーザーを作成します。この例では、「openemr」という新しいデータベースを作成し、「openemruser」というユーザーを作成し、パスワードは「password」です。データベースの詳細は自分の情報に合わせて調整できます。

CREATE DATABASE openemr;  
CREATE USER 'openemruser'@'localhost' IDENTIFIED BY 'Your_password2';  
GRANT ALL PRIVILEGES ON openemr.* TO 'openemruser'@'localhost';  
FLUSH PRIVILEGES;

create database and user

次に、以下のクエリを実行して「openemruser」の権限を確認します。ユーザーが「openemr」データベースにアクセスできることを確認してください。

SHOW GRANTS FOR openemruser@localhost;

最後に、「quit」と入力してMariaDBサーバーから退出します。

show user privileges

OpenEMRソースコードのダウンロード

PHP-FPMとMariaDBサーバーの設定が完了したので、次のステップはOpenEMRソースコードをダウンロードし、適切な権限と所有権でインストールを設定することです。

/var/www」ディレクトリに移動し、以下の「wget」コマンドを使用してOpenEMRソースコードをダウンロードします。

cd /var/www/  
wget https://sourceforge.net/projects/openemr/files/OpenEMR%20Current/7.0.2/openemr-7.0.2.tar.gz

ダウンロードが完了したら、以下の「tar」コマンドを実行してOpenEMRソースコードを抽出し、新しいディレクトリの名前を「openemr」に変更します。これにより、OpenEMRソースコードは「/var/www/openemr」ディレクトリに保存されます。

tar -pxzf openemr-7.0.2.tar.gz  
mv openemr-7.0.2 openemr

最後に、以下の「chown」コマンドを実行して「/var/www/openemr」ディレクトリの所有権を「www-data」ユーザーに変更します。

sudo chown -R www-data:www-data /var/www/openemr

Nginxサーバーブロックの設定

OpenEMRソースコードをダウンロードした後、OpenEMRインストールを実行するために使用される新しいNginxサーバーブロックを作成します。ドメイン名が準備され、サーバーのIPアドレスを指していることを確認してください。

以下の「nano」エディタコマンドを使用して、新しいNginxサーバーブロック設定「/etc/nginx/sites-available/openemr」を作成します。

sudo nano /etc/nginx/sites-available/openemr

設定を挿入し、「server_name」オプションを自分のドメイン名に変更してください。

server {  
listen 80;  
server_name openemr.example.com;  
  
access_log /var/log/nginx/openemr.access.log;  
error_log /var/log/nginx/openemr.error.log;  
  
root /var/www/openemr;  
  
index index.php;  
  
location / {  
try_files $uri $uri/ /index.php;  
}  
  
# Pass PHP Scripts To FastCGI Server  
location ~* \.php$ {  
try_files $uri =404;  
fastcgi_index index.php;  
fastcgi_pass unix:/run/php/php8.2-fpm.sock; # Depends On The PHP Version  
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;  
fastcgi_param DOCUMENT_ROOT $realpath_root;  
include fastcgi_params;  
}  
  
# deny access to writable files/directories  
location ~* ^/sites/*/(documents|edi|era) {  
deny all;  
return 404;  
}  
  
# deny access to certain directories  
location ~* ^/(contrib|tests) {  
deny all;  
return 404;  
}  
  
# Alternatively all access to these files can be denied  
location ~* ^/(admin|setup|acl_setup|acl_upgrade|sl_convert|sql_upgrade|gacl/setup|ippf_upgrade|sql_patch)\.php {  
deny all;  
return 404;  
}  
  
location = /favicon.ico {  
log_not_found off;  
access_log off;  
}  
  
location = /robots.txt {  
log_not_found off;  
access_log off;  
}  
  
location ~ /\. {  
deny all;  
}  
}

ファイルを保存し、エディタを終了します。

次に、以下のコマンドを実行して「openemr」サーバーブロックを有効にし、Nginxの構文を確認します。正しいNginx構文であれば、「test is successful - syntax is ok」という出力が表示されます。

sudo ln -s /etc/nginx/sites-available/openemr /etc/nginx/sites-enabled/  
sudo nginx -t

setup nginx

最後に、以下の「systemctl」コマンドを実行してNginxウェブサーバーを再起動し、変更を適用します。

sudo systemctl restart nginx

HTTPSでOpenEMRを保護する

このセクションでは、Certbotをインストールし、OpenEMRをHTTPSで保護します。これは、パブリックドメイン名とサーバーを使用している場合に機能します。ローカルサーバーや開発環境では、自己署名証明書を使用できます。

SSLを設定する前に、以下の「ufw」コマンドを実行して、サーバーでHTTPおよびHTTPSサービスの両方を開きます。「success」という出力が表示されます。

Sudo ufw allow 'Nginx Full'

次に、以下の「apt」コマンドを使用して「certbot」と「python3-certbot-nginx」プラグインをインストールします。インストールを確認するために「Y」を入力します。

sudo apt install certbot python3-certbot-nginx -y

インストールが完了したら、以下の「certbot」コマンドを実行してSSL証明書を生成し、OpenEMRインストールを保護します。

sudo certbot --nginx -d openemr.howtoforge.local

プロセスが完了すると、SSL証明書は「/etc/letsencrypt/live/domain.com」ディレクトリに保存されます。また、OpenEMRインストールはHTTPSで保護されます。

OpenEMRのインストール

ウェブブラウザを開き、https://openemr.howtoforge.local/にアクセスします。

最初に、インストーラーはOpenEMRソースコードの権限を確認しますので、適切な権限があることを確認してください。

installation

データベースを作成しました」オプションを選択して、データベース統合を設定します。

i have the database

データベースの詳細とOpenEMRの新しい管理者アカウントを入力します。

database settings

データベースの初期化が実行され、管理者ユーザーが作成されます。

installation

次に、PHP設定がOpenEMRの要件を満たしていることを確認します。

php configuration

インストールが完了すると、OpenEMRのログインページにリダイレクトされます。管理者ユーザー名とパスワードを入力し、ログインをクリックします。

login

成功すると、以下のOpenEMRダッシュボードが表示されます。

dashboard

結論

おめでとうございます!Ubuntu 24.04サーバーにOpenEMRのインストールが完了しました。OpenEMRはPHP-FPM、Nginxウェブサーバー、MariaDBサーバーで稼働しています。また、CertbotとLet’s Encryptを通じてOpenEMRをHTTPSで保護しました。

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。