Cannot start Docker

Actually, I was wrong, “docker ps” doesn’t show stopped containers, so it might still be there, just not running.

Things have progressed.

I ran docker-compose up -d again.

http://localhost/interface/login/login.php?site=default now gives a blank (white) screen with no text, nothing.

However, now, when proceeding with the backup restore

  • docker exec -it $(docker ps | grep _openemr | cut -f 1 -d " ") /bin/sh
  • wget https://raw.githubusercontent.com/openemr/openemr/rel-502/sql_upgrade.php

follow through without any error reported:

robert@roberts-Lenovo-B590:~$ docker exec -it $(docker ps | grep _openemr | cut -f 1 -d " ") /bin/sh
/var/www/localhost/htdocs/openemr # wget https://raw.githubusercontent.com/opene
mr/openemr/rel-502/sql_upgrade.php
Connecting to raw.githubusercontent.com (185.199.108.133:443)
saving to 'sql_upgrade.php'
sql_upgrade.php      100% |********************************|  5477  0:00:00 ETA
'sql_upgrade.php' saved
/var/www/localhost/htdocs/openemr #

Nevertheless, the next step, localhost/sql_upgrade.php, again produces a blank page.

Furthermore, if I look in /var/www/ there is no folder named ‘local host’.

It seems I am banging my head against a brick wall.

In the evident absence of any fix, please could someone tell me how to safely remove all traces of this docker installation of openemr from my computer?

I have some urgency.

Thank you.

Given that I have not received a response, I wiped the disk clean and reinstalled Linux Mint 21. Then I followed the instructions here except I got the up-to-date docker image from here. docker-compose up -d ran without error (see below). But both http://localhost and http://localhost/interface/login/login.php?site=default give “Problem loading page. The connection was reset. The connection to the server was reset while the page was loading”. This docker installation is not so super simple as it is supposed to be. It is quite demoralising. Please help. I will pay if necessary.

robert@robert-Lenovo-B590:~/openemr$ docker-compose up -d
Creating network "openemr_default" with the default driver
Creating volume "openemr_logvolume01" with default driver
Creating volume "openemr_sitevolume" with default driver
Creating volume "openemr_databasevolume" with default driver
Pulling mysql (mariadb:10.6)...
10.6: Pulling from library/mariadb
3b65ec22a9e9: Pull complete
d19669910bc0: Pull complete
8c46f5717c58: Pull complete
ea0278d54bb3: Pull complete
b80813ba5cb6: Pull complete
7fc4ac948168: Pull complete
d65facec905d: Pull complete
c5763bd0e9dc: Pull complete
7ce50f319e47: Pull complete
7cf22e53975d: Pull complete
53b47f74b397: Pull complete
Digest: sha256:e78a7000d93b2fabc0bfb6ff1504199f2f9bfb4a8b7350922c08dabf2b2bdbea
Status: Downloaded newer image for mariadb:10.6
Pulling openemr (openemr/openemr:7.0.0)...
7.0.0: Pulling from openemr/openemr
ab6db1bc80d0: Pull complete
8464f6e2adde: Pull complete
84c3cee08360: Pull complete
370a6e104c0a: Pull complete
fb54f92c3495: Pull complete
3a16e8773e9d: Pull complete
8f37b0ae95bd: Pull complete
4f4fb700ef54: Pull complete
754fb4626a9c: Pull complete
38877fce6c1f: Pull complete
938fc725ae12: Pull complete
a1240429eb14: Pull complete
d07f74c79ca7: Pull complete
4cee6b792a31: Pull complete
cce7a64cf2cf: Pull complete
16137d760279: Pull complete
9140102a61c6: Pull complete
Digest: sha256:db9b36fb58c5dfcc063fd0730f6d8b694080360c3d3eb4e976f690ad2d68e305
Status: Downloaded newer image for openemr/openemr:7.0.0
Creating openemr_mysql_1 ... done
Creating openemr_openemr_1 ... done
robert@robert-Lenovo-B590:~/openemr$

usually takes 5 to 10 minutes to load, to check on it use
docker ps
docker logs <openemr container id>

Thank you. I am now able to open openemr in my browser (Firefox).

Now please could you confirm that the instructions you gave me here are still good to restore my backup?

Secondly, I am puzzled by this: The docker-compose.yml file states that the site is at /var/www/localhost/htdocs/openemr/sites but there is no /var/www directory. Why is this?

mostly, would add steps 6.5 to drop and recreate database:
mysql -uroot -proot
then at the mysql prompt
drop database openemr
create database openemr
then exit back to maria shell and proceed with step 7
step 10 is now
wget https://github.com/openemr/openemr/blob/rel-700/sql_upgrade.php

/var/www/localhost is the web server filesystem in the docker

I have followed those instructions, inserting the above steps between steps 6 and 7, and changing step 10 as indicated.

http://localhost now gives me a blank white screen, no text or anything else.

Bring over your documents like you did later on in the aforementioned thread since you’ll need the keys for the db.

I have brought over my documents. http://localhost still just produces a blank screen.

I think based upon the level of your frustration you may want to contact one of the vendors on the vendor support page or some of the people here on the thread and describe your need and your budget. If things are truly urgent they can probably walk through a setup with you on a screen share and get you up and running so you can move onto the next aspects for your project that you are desiring. Just a thought. If you’ve got time and patience then people can continue to answer your questions.

Docker can be quite a different experience if you’ve never used docker before.

to start trouble shooting install the openemr-cmd by following these directions, openemr-devops/utilities/openemr-cmd at master · openemr/openemr-devops · GitHub

I followed instructions 1 and 2 which seem straightforward enough, not much chance of making a mistake, but instruction 3 gives:

root@robert-Lenovo-B590:/home/robert# openemr-cmd
openemr-cmd: command not found

looks like newer versions of ubuntu no longer have ~/bin in the executable path so try this instead:

  1. curl -L https://raw.githubusercontent.com/openemr/openemr-devops/master/utilities/openemr-cmd/openemr-cmd > ~/.local/bin/openemr-cmd
  2. chmod +x ~/.local/bin/openemr-cmd
  3. openemr-cmd
robert@robert-Lenovo-B590:~$ openemr-cmd

Usage: openemr-cmd COMMAND [ARGS]
Usage: openemr-cmd -d <docker name> COMMAND [ARGS]
Options:
  -h, --help                         Show the commands usage
  -v, --version                      Show the openemr-cmd command version
  -d                                 Specify the docker id or name to execute commands
Commands:
docker-management:
  up                                 Execute: docker-compose up -d
  down                               Execute: docker-compose down -v
  start                              Execute: docker-compose start
  stop                               Execute: docker-compose stop
  s, shell                           Open a docker shell quickly
  e, exec                            Execute commands outside docker
  dl, docker-log                     To check docker log
  dn, docker-names                   To check docker the running docker names
php-management:
  bt, build-themes                   Make changes to any files on your local file system
  pl, php-log                        To check PHP error logs
  pr, psr12-report                   To create a report of PSR12 code styling issues
  pf, psr12-fix                      To fix PSR12 code styling issues
  ltr, lint-themes-report            To create a report of theme styling issues
  ltf, lint-themes-fix               To fix theme styling issues
  pp, php-parserror                  To check PHP parsing errors
  xl, xdebug-log                     To check xdebug log
  lxp, list-xdebug-profiles          To list xdebug profiles
test-management:
  ut, unit-test                      To run unit testing
  at, api-test                       To run api testing
  et, e2e-test                       To run e2e testing
  st, services-test                  To run services testing
  ft, fixtures-test                  To run fixtures testing
  vt, validators-test                To run validators testing
  ct, controllers-test               To run controllers testing
  ctt, common-test                   To run common testing
sweep-management:
  cs, clean-sweep                    To run the entire dev tool suite
  cst, clean-sweep-tests             To run only all the automated tests
reset-mamagement:
  dr, dev-reset                      To reset OpenEMR only
  di, dev-install                    To install OpenEMR (reset needs to be run prior)
  dri, dev-reset-install             To reset and reinstall OpenEMR
  drid, dev-reset-install-demodata   To reset and reinstall OpenEMR with demo data
backup-management:
  bs, backup-snapshot                Create a backup snapshot
  rs, restore-snapshot               Restore from a snapshot
  ls, list-snapshots                 To list the snapshots
  lc, list-capsules                  List the capsules
  gc, get-capsule                    Copy the capsule from the docker to your host directory
  pc, put-capsule                    Copy the capsule into the docker
ssl-management:
  fh, force-https                    Force https
  ufh, un-force-https                Removing forcing of https
  ossc, on-self-signed-cert          Toggle on self signed certificates (on by default)
  scc, setup-client-cert             Turn on client based cert with designated package
  lcc, list-client-certs             To list the certificate packages
  pcc, put-client-cert               To copy certificate package into the docker
  ss, sql-ssl                        Use testing sql ssl CA cert
  sso, sql-ssl-off                   Remove testing sql ssl CA cert
  ssc, sql-ssl-client                Use testing sql ssl client certs
  ssco, sql-ssl-client-off           Remove testing sql ssl client certs
  css, couchdb-ssl                   Use testing couchdb ssl CA cert
  cso, couchdb-ssl-off               Remove testing couchdb ssl CA cert
  csc, couchdb-ssl-client            Use testing couchdb ssl client certs
  csco, couchdb-ssl-client-off       Remove testing couchdb ssl client certs
  lss, ldap-ssl                      Use testing ldap ssl CA cert
  lso, ldap-ssl-off                  Remove testing ldap ssl CA cert
  lsc, ldap-ssl-client               Use testing ldap ssl client certs
  lsco, ldap-ssl-client-off          Remove testing ldap ssl client certs
multisite-management:
  lm, list-multisites                List multisites
  swtm, set-swagger-to-multisite     Direct swagger api testing suite to use a multisite <multisite>
  gmb, generate-multisite-bank       Create bank of multisites cloned from default <number sites>
  em, enable-multisite               Turn on support for multisite in setup.php
  dm, disable-multisite              Turn off support for multisite in setup.php
api-management:
  bad, build-api-docs                Build and place api documentation/configuration for swagger
  roc, register-oauth2-client        Register oauth2 client (returns client id/secret)
  rocd, register-oauth2-client-demo  Register oauth2 client (returns client id/secret) on online demo
  swtm, set-swagger-to-multisite     Direct swagger api testing suite to use a multisite <multisite>
computational-health-informatics:
  irp, import-random-patients        Create and import random patients <number patients>
  gmb, generate-multisite-bank       Create bank of multisites cloned from default <number sites>
webroot-management:
  cwb, change-webroot-blank          Change webroot to be blank (this is default setting of environment)
  cwo, change-webroot-openemr        Change webroot to be openemr
others:
  ev, ensure-version                 Upgrade OpenEMR from specified old version to current version
  el, enable-ldap                    Turn on support for LDAP - login credentials are admin:admin
  dld, disable-ldap                  Turn off support for LDAP - standard login credentials
  ec, encoding-collation             Change the database character set and collation
robert@robert-Lenovo-B590:~$

Try to load OpenEMR and then run openemr-cmd pl in the terminal to see any errors listed by the docker.

robert@robert-Lenovo-B590:~$ openemr-cmd pl
sh: /root/devtools: not found

sorry, forgot this doesn’t have devtools, try this command instead:
docker exec -it $(docker ps | grep _openemr | cut -f 1 -d " ") tail /var/log/apache2/error.log

robert@robert-Lenovo-B590:~$ docker exec -it $(docker ps | grep _openemr | cut -f 1 -d " ") tail /var/log/apache2/error.log
[Thu Aug 25 14:35:45.588748 2022] [core:notice] [pid 12] AH00094: Command line: '/usr/sbin/httpd -D FOREGROUND'
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 172.18.0.2. Set the 'ServerName' directive globally to suppress this message
[Fri Aug 26 06:44:38.688715 2022] [core:warn] [pid 11] AH00098: pid file /run/apache2/httpd.pid overwritten -- Unclean shutdown of previous Apache run?
[Fri Aug 26 06:44:38.746524 2022] [mpm_prefork:notice] [pid 11] AH00163: Apache/2.4.54 (Unix) OpenSSL/1.1.1q configured -- resuming normal operations
[Fri Aug 26 06:44:38.746610 2022] [core:notice] [pid 11] AH00094: Command line: '/usr/sbin/httpd -D FOREGROUND'
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 172.18.0.2. Set the 'ServerName' directive globally to suppress this message
[Fri Aug 26 13:37:51.447515 2022] [mpm_prefork:notice] [pid 12] AH00163: Apache/2.4.54 (Unix) OpenSSL/1.1.1q configured -- resuming normal operations
[Fri Aug 26 13:37:51.447658 2022] [core:notice] [pid 12] AH00094: Command line: '/usr/sbin/httpd -D FOREGROUND'
[Fri Aug 26 13:40:49.497349 2022] [php:notice] [pid 23] [client 172.18.0.1:46062] OpenEMR Error : Decryption failed authentication.
[Fri Aug 26 13:40:49.497467 2022] [php:notice] [pid 23] [client 172.18.0.1:46062] OpenEMR Error : Key in drive is not compatible (ie. can not be decrypted) with key in database - Exiting.
robert@robert-Lenovo-B590:~$

did you bring in your documents? that’s where the keys are, Blank screen on first start of OpenEMR 5.0.2 - #62 by stephenwaite