mirror of
https://gitlab.com/signalytic/client-external/streamline/streamline-emr.git
synced 2026-09-11 18:51:31 +00:00
Further configuration options are made available to support running multiple instances of the app on the same machine, including the use of docker sibling containers. `README.md` and `template.env` are updated accordingly. The database port is no longer exposed as this is not required to access and manage the app at this time.
45 lines
2.3 KiB
Markdown
45 lines
2.3 KiB
Markdown
# Streamline EMR
|
|
|
|
Packaging and installation tools for Streamline's "Streamline EMR" application.
|
|
|
|
## Building
|
|
1. ensure you have docker access to this project's container registry on GitLab
|
|
2. run `package.sh` to generate a new application package
|
|
3. package will be stored to `build-packages/`
|
|
|
|
## Installing
|
|
1. extract the generated archive file in a temporary folder on the target system
|
|
2. run `install.sh`
|
|
|
|
## Running
|
|
### Production (systemd)
|
|
On a production system, `systemd` will manage the lifecycle of the application, e.g.
|
|
```
|
|
# enable and start the the application service
|
|
systemctl daemon-reload
|
|
systemctl enable streamline-emr
|
|
systemctl start streamline-emr
|
|
|
|
# stop the application service
|
|
systemctl stop streamline-emr
|
|
|
|
# restart the application service
|
|
systemctl restart streamline-emr
|
|
```
|
|
|
|
### Docker
|
|
In a docker environment, the application must be started manually. This is done by running the `entry` script, for example:
|
|
```
|
|
/var/signalytic/clientapps/streamline/streamline-emr/entry
|
|
```
|
|
|
|
If multiple instances are run from the same machine, additional configuration may be required to differentiate the instances. This is generally the case when using the "sibling container" method for running docker from within a docker container. See the `Configuration` section for more details.
|
|
|
|
## Configuration
|
|
Certain configuration options can be adjusted by setting environment variables or by defining these variables in a `.env` file stored in the same directory as the `docker-compose.yml` file. These variables are:
|
|
`APP_PORT`: port mapping for the web app server (default: `3000`)
|
|
`CONTAINER_NAME`: name of the application container (default: `streamline-emr`)
|
|
`DATA_DIR`: directory to be mounted for peristent data (default: `/var/signalytic/clientapps/streamline/streamline-emr/data`)
|
|
`COMPOSE_PROJECT_NAME`: assign the project name associate with the compose file - this avoids conflicts when the "same" compose file is used to manage multiple instances (e.g. when using docker sibling containers)
|
|
|
|
Important note when using "sibling containers": the sibling container method uses the host docker socket to provide containers with access to docker. As a result, port mappings and volumne mount points all refer to the host system rather than the container from which the docker command originates. |