* docker: upgrade ubuntu version
Upgrade rhe ubuntu version used in the main Dockerfile to latest stable version `20.04`
* Update Dockerfile
amended ubuntu version 20 -> 22
but then the following error:
```
0 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d...
done.
Processing triggers for dbus (1.12.20-2ubuntu4.1) ...
gpg: error running '/usr/bin/gpg-agent': probably not installed
gpg: failed to start agent '/usr/bin/gpg-agent': Configuration error
gpg: can't connect to the agent: Configuration error
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/softwareproperties/shortcuthandler.py", line 423, in add_key
PPA publishes dbgsym, you may need to include 'main/debug' component
Repository: 'deb https://ppa.launchpadcontent.net/ubuntugis/ubuntugis-unstable/ubuntu/ jammy main'
Description:
Unstable releases of Ubuntu GIS packages. These releases are more bleeding edge and while generally they should work well, they dont receive the same amount of quality assurance as our stable releases do.
More info: https://launchpad.net/~ubuntugis/+archive/ubuntu/ubuntugis-unstable
Adding repository.
Adding deb entry to /etc/apt/sources.list.d/ubuntugis-ubuntu-ubuntugis-unstable-jammy.list
Adding disabled deb-src entry to /etc/apt/sources.list.d/ubuntugis-ubuntu-ubuntugis-unstable-jammy.list
Adding key to /etc/apt/trusted.gpg.d/ubuntugis-ubuntu-ubuntugis-unstable.gpg with fingerprint 6B827C12C2D425E227EDCA75089EBE08314DF160
subprocess.run(cmd.split(), check=True, input=keys)
File "/usr/lib/python3.10/subprocess.py", line 524, in run
raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['gpg', '-q', '--no-options', '--no-default-keyring', '--batch', '--keyring', '/etc/apt/trusted.gpg.d/ubuntugis-ubuntu-ubuntugis-unstable.gpg', '--homedir', '/tmp/tmpjlr98185', '--import']' returned non-zero exit status 2.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/bin/add-apt-repository", line 364, in <module>
sys.exit(0 if addaptrepo.main() else 1)
File "/usr/bin/add-apt-repository", line 357, in main
shortcut.add()
File "/usr/lib/python3/dist-packages/softwareproperties/shortcuthandler.py", line 222, in add
self.add_key()
File "/usr/lib/python3/dist-packages/softwareproperties/shortcuthandler.py", line 425, in add_key
raise ShortcutException(e)
softwareproperties.shortcuthandler.ShortcutException: Command '['gpg', '-q', '--no-options', '--no-default-keyring', '--batch', '--keyring', '/etc/apt/trusted.gpg.d/ubuntugis-ubuntu-ubuntugis-unstable.gpg', '--homedir', '/tmp/tmpjlr98185', '--import']' returned non-zero exit status 2.
````
Removing the ubuntugis PPA build without error - is ubuntugis a requirements? probably Jammy has up-to-date packages for pygeoapi dependencies
* Update Dockerfile
removing ubuntugis PPA
* Update Dockerfile
adding `python3-pytest` and `python3-pyld` dependencies
* Update Dockerfile
* Update Dockerfile
* fixing docker environment with suggested changes
* replace ubuntu version with codename
* Update .dockerignore
* Update Dockerfile
* Update Dockerfile
* Update Dockerfile
* Update entrypoint.sh
skip the SensorThings and other tests that require a local server
Co-authored-by: Just van den Broecke <just@justobjects.nl>
Currently gunicorn is started in the entrypoint as subprocess. This
means that the entrypoint stays as process with PID 1 and eats the
signals that e.g. kubernetes sends to it. Thus when trying to update
the container, kubernetes must terminate the process ungracefully.
See e.g. this resources for a more detailed explanation:
https://hynek.me/articles/docker-signals/
This change replaces the entrypoint-shellscript with gunicorn, such that
signals are directly forwarded to gunicorn, where they are then handled.
One drawback of this approach is that lines after `exec gunicorn` are
not executed anymore. This currently affects `echo "END /entrypoint.sh"`.
A different approach would be to use `tini` to handle the system (see
link above). To do this, we would need to install tini.
* Bump gdal to v3
* Fix query duplicates with bbox for PG
* Add backward compatibility for axis order
* Move travis to bionic dist
Fix gdal version 3 on travis by pinning latest ubuntu unstable release
Fix ubuntugis sources on travis
Remove pinned python gdal version
Add mongodb start
Enable mongod service
Fix package name
Install mongo from official community repos
Add mongo enable and start commands
* Fix wrong axis mapping strategy
Add author
* Move base image to bullseye for docker build
* Fix remaining unchanged places for #364
* Make image size smaller
* Add docker build and cite tests
Fix python version
Move steps after docker build elsewhere
Fix uppercase characters
Fix internal port
Daemonize the run process
* Check logs and run test command from the entrypoint
* Remove the execution of mongo tests for test command
Remove the execution of mongo tests for test command
Fix failed command
* Add delay and move build to install step
Remove grep command for now
Use single quote