Apologies, the commits here: - 2a3df086d314fcf5c249cc48a83029662fc50ed0 - Docker: add [c]git, nginx, fastapi, php-fpm, ca - 5bd46d18a3cd645ae2164ee3e151ac10524355a2 - Improve Docker ecosystem On Thu, Jun 24, 2021 at 08:15:57PM -0700, Kevin Morris wrote:
Hello aur-dev,
Some new commits have been merged into the `pu` branch which implement the majority of the codebase in Docker services.
First, build the `aurweb:latest` Docker image:
$ docker build --tag aurweb:latest .
Once that's built, you can now use a myriad of `docker-compose` services:
$ docker-compose up mariadb ... Host mariadb. Accessible on localhost:13306, user: aur, pass: aur, databases: aurweb, aurweb_test.
$ docker-compose up git ... Setup aur.git and host an aurweb sshd Accessible on localhost:2222
$ docker-compose up nginx ... Host PHP and FastAPI on separate ports. This service depends on the `ca` service, which generates a self signed CA certificate and moves it into the mounted $AURWEB/cache volume with the name `ca.root.pem`. Users can import this into their ca-certificates or web browser. This CA root certificate will persist until it is deleted from ./cache. Accessible on https://localhost:8443 (PHP) and https://localhost:8444 (FastAPI).
$ docker-compose up test ... Run comprehensive tests (sharness, pytest-mysql, pytest-sqlite).
$ docker-compose up sharness ... Run sharness tests.
$ docker-compose up pytest-sqlite ... Run pytests using SQLite. Note: This service as well as *-mysql produce a ./cache/.coverage file which can be used on the host by running `./util/fix-coverage ./cache/.coverage` from aurweb's root directory.
$ docker-compose up pytest-mysql ... Run pytests using MySQL.
A complete list of Docker services:
- ca: Certificate Authority - mariadb - git - cgit - php-fpm - fastapi - nginx - sharness - pytest-mysql - pytest-sqlite - test
A list of Docker volumes:
- `./cache/`: Mounted volume data cache directory. - Hosts `ca.root.pem`, `localhost.{key,cert}.pem`. - `./logs/`: Various logs from services in docker.
Any improvements are welcome. Thanks for working on aurweb with us!
Regards, Kevin Morris kevr @ Libera
-- Kevin Morris Software Developer
Identities: - kevr @ Libera
-- Kevin Morris Software Developer Identities: - kevr @ Libera