Giter Site home page Giter Site logo

openemr-devops's Introduction

Syntax Status Styling Status Testing Status

Backers on Open Collective Sponsors on Open Collective

OpenEMR

OpenEMR is a Free and Open Source electronic health records and medical practice management application. It features fully integrated electronic health records, practice management, scheduling, electronic billing, internationalization, free support, a vibrant community, and a whole lot more. It runs on Windows, Linux, Mac OS X, and many other platforms.

Contributing

OpenEMR is a leader in healthcare open source software and comprises a large and diverse community of software developers, medical providers and educators with a very healthy mix of both volunteers and professionals. Join us and learn how to start contributing today!

Already comfortable with git? Check out CONTRIBUTING.md for quick setup instructions and requirements for contributing to OpenEMR by resolving a bug or adding an awesome feature ๐Ÿ˜Š.

Support

Community and Professional support can be found here.

Extensive documentation and forums can be found on the OpenEMR website that can help you to become more familiar about the project ๐Ÿ“–.

Reporting Issues and Bugs

Report these on the Issue Tracker. If you are unsure if it is an issue/bug, then always feel free to use the Forum and Chat to discuss about the issue ๐Ÿชฒ.

Reporting Security Vulnerabilities

Check out SECURITY.md

API

Check out API_README.md

Docker

Check out DOCKER_README.md

FHIR

Check out FHIR_README.md

For Developers

If using OpenEMR directly from the code repository, then the following commands will build OpenEMR (Node.js version 20.* is required) :

composer install --no-dev
npm install
npm run build
composer dump-autoload -o

Contributors

This project exists thanks to all the people who have contributed. [Contribute].

Sponsors

Thanks to our ONC Certification Major Sponsors!

License

GNU GPL

openemr-devops's People

Contributors

aapjeisbaas avatar adunsulag avatar ajmeese7 avatar aptalca avatar boxlady avatar bradymiller avatar danvau7 avatar daurrutia avatar eugeneiiim avatar jesdynf avatar jmevorach avatar johnbwilliams avatar jxprime avatar matthewvita avatar preet-adhikari avatar prondubuisi avatar reidliu41 avatar sahasrarjn avatar stephenwaite avatar stu01509 avatar surfacehazard avatar thetoolbox avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

openemr-devops's Issues

NFS support

Not all Amazon regions have EFS support. Support NFS as an option, even if that means high-availability (multi-AZ) isn't feasible.

`rm auto_configure.php` causes crash after auto-config

Looks like by adding the second rm auto_configure.php here, it's trying to remove the file twice. Removing it the first time seems likely to be sufficient, although I have to test the behavior of stopping and restarting a container to better understand which things will be persisted. Additionally, we may need to take some steps to properly persist the permissions that are done during autoconfig. Presently, they may be lost when a container is killed, but its site volume is preserved, and a new container is started in its place. The logical solution seems to be to move them into a separate 'if' block, checking only if $CONFIG == 1 and then re-applying the permissions forcefully. That would honestly take care of both issues I think.

Subtle Docker-behavior testing

Testing required:

  • how do I expose (and conceal once more) MySQL? just edit docker-compose and rerun?
  • will Docker fail on next reboot if docker-compose is missing?
  • will the names of any instances (relied on for scripting) change if these things are done?

Restore process

  • how does it even get the files? maybe this should be an on-instance script
  • unpack backups
  • restore DB
  • restore webroot

XtraBackup

  • configure MySQL for XtraBackup OR wait until MySQL config is done and replace with Percona Server
  • many Docker XtraBackup containers, testing will be required
  • do I share the DB or the files out? questions, questions

Need to pin docker image to a Release Version of OpenEMR

For production use of the openemr docker image, we should be using an official release, ideally 5.0.0 (or latest). Currently, this causes an adodb incompatibility issue with php7.1. Ideally, we could backport the adodb update, but some discussion of the optimal solution is warranted.

ROLLBACK_COMPLETE

I keep following the directions with the result always ending in ROLLBACK_COMPLETE. I have deleted the stack, re-created the key several times with the same result.

QA Day II Issues :)

Hello everybody,

I have tested the OpenEMR Lightsail solution again today and was able to accomplish the following:

  1. Logging in
  2. Changing the password
  3. Creating patients
  4. Creating a patient encounter to upload blood pressure vitals of 120 over 80
  5. Uploading a patient document
  6. Rebooting the system
  7. Changing some of the administrative settings
  8. General smoke testing with the user interface

Unfortunately, I actually ran into a few things:

  • "Need access to the containers? Log into root (sudo -i), and..." section commands didn't work for me. I had to use the good old docker ps, manually find the hash, enter in docker exec -it hash /bin/sh

  • Backup cron didn't work:

bsdmainutils logrotate mlocate update-notifier-common
root@ip-172-26-13-213:/etc/cron.daily# cat duplicity-backups
#!/bin/bash

docker exec $(docker ps | grep mysql | cut -f 1 -d " ") /root/xbackup-wrappe
r.sh
duplicity --no-encryption --full-if-older-than 9D --include $(docker volume
inspect docker_sqlbackup | jq -r ".[0].Mountpoint") --include $(docker volum
e inspect docker_sitevolume | jq -r ".[0].Mountpoint") --exclude '' / file
:///root/backups/
duplicity remove-all-but-n-full 2 --force file:///root/backups/
root@ip-172-26-13-213:/etc/cron.daily# ./duplicity-backups
Error: No such volume: docker_sqlbackup
Error: No such volume: docker_sitevolume
Fatal Error: The file specification
null
cannot match any files in the base directory
/
Useful file specifications begin with the base directory or some
pattern (such as '
') which matches the base directory.
Local and Remote metadata are synchronized, no sync needed.
Last full backup date: none
No old backup sets found, nothing deleted.

S3 needs versioning

Old (deleted) backup files should be recoverable for 7 days. It looks doable, just need to sit down and work out how.

Self-Signed SSL Support

The OpenEMR docker should generate and install a self-signed SSL certificate, and expose 443.

Issues :(

Tested twice and I'm getting "ERR_CONNECTION_REFUSED"

Launch script runs to the end but when logged in as root docker ps doesn't show any running containers.

Automatic Setup

OpenEMR should set itself up on first run, so that the administrator doesn't need to run through setup.php manually. It seems currently that the best plan would be to use environment variables passed into the container to set the DB and credentials.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.