Loading README.md +13 −25 Original line number Diff line number Diff line Loading @@ -18,23 +18,14 @@ The `Dockerfile` uses:: It needs a properly configured `wsgi.conf` that will be loaded within the `http/conf.d` of the container. Used folders: - `sed-data` : place to store the SED Models HDF5 file - `wsgi-scripts` : business logic of the service itself The `sed-data` must be visible to the application on the host. ### Build the container image ### Build and run the container image To build the container image: podman build --tag vlkb-sedmods -f ./Dockerfile The tag can be one of your choice. It is suggested to have a dedicated user to run this in production. It is suggested to have a dedicated user to run this in production. ### Run the container Once the podman image is ready and the two directories are in place, to run the container it suffices a command like Once the podman image is ready and the two directories are in place, run: podman run -dt \ --name sedmod-test \ Loading @@ -56,16 +47,10 @@ host server, this must be changed if the host's 8080 is already in use. ### Service endpoints How to start service is descripbed [here](README_implementation.md). Then the service presents the endpoint: - searchd Access the service by: curl localhost:8080/searchd/?arg1_arg2_...-_arg9 > output.json The service implementation is descripbed [here](README_implementation.md). Response is in JSON format. And the arguments are as in this C++ code fragment: Then the service presents the _/searchd_ endpoint. Arguments are separated by underscore and their meaning is as in this C++ code snipped: ```cpp QString args = QString("'%1_%2_%3_%4_%5_%6_%7_0_%8_%9'") Loading @@ -80,9 +65,14 @@ Response is in JSON format. And the arguments are as in this C++ code fragment: .arg(ui->delta_chi2_lineEdit->text()); ``` Access the service by: curl localhost:8080/searchd/?arg1_arg2_...-_arg9 > output.json Response is in JSON format. ### Network Proxy Since it could be annoying to explitly use port 8080 on the host, the service can be made visible on a specific context path in the host The service can be made visible on a specific context path in the host server's http using the httpd _ProxyPass_ directive, like <Location "/sedmods"> Loading @@ -91,5 +81,3 @@ server's http using the httpd _ProxyPass_ directive, like where _/sedmods_ is an example and the _8080_ port depends on the passed parameters to the podman run command (see above). Loading
README.md +13 −25 Original line number Diff line number Diff line Loading @@ -18,23 +18,14 @@ The `Dockerfile` uses:: It needs a properly configured `wsgi.conf` that will be loaded within the `http/conf.d` of the container. Used folders: - `sed-data` : place to store the SED Models HDF5 file - `wsgi-scripts` : business logic of the service itself The `sed-data` must be visible to the application on the host. ### Build the container image ### Build and run the container image To build the container image: podman build --tag vlkb-sedmods -f ./Dockerfile The tag can be one of your choice. It is suggested to have a dedicated user to run this in production. It is suggested to have a dedicated user to run this in production. ### Run the container Once the podman image is ready and the two directories are in place, to run the container it suffices a command like Once the podman image is ready and the two directories are in place, run: podman run -dt \ --name sedmod-test \ Loading @@ -56,16 +47,10 @@ host server, this must be changed if the host's 8080 is already in use. ### Service endpoints How to start service is descripbed [here](README_implementation.md). Then the service presents the endpoint: - searchd Access the service by: curl localhost:8080/searchd/?arg1_arg2_...-_arg9 > output.json The service implementation is descripbed [here](README_implementation.md). Response is in JSON format. And the arguments are as in this C++ code fragment: Then the service presents the _/searchd_ endpoint. Arguments are separated by underscore and their meaning is as in this C++ code snipped: ```cpp QString args = QString("'%1_%2_%3_%4_%5_%6_%7_0_%8_%9'") Loading @@ -80,9 +65,14 @@ Response is in JSON format. And the arguments are as in this C++ code fragment: .arg(ui->delta_chi2_lineEdit->text()); ``` Access the service by: curl localhost:8080/searchd/?arg1_arg2_...-_arg9 > output.json Response is in JSON format. ### Network Proxy Since it could be annoying to explitly use port 8080 on the host, the service can be made visible on a specific context path in the host The service can be made visible on a specific context path in the host server's http using the httpd _ProxyPass_ directive, like <Location "/sedmods"> Loading @@ -91,5 +81,3 @@ server's http using the httpd _ProxyPass_ directive, like where _/sedmods_ is an example and the _8080_ port depends on the passed parameters to the podman run command (see above).