Complete Docker Implementation

Kevin Morris kevr at 0cost.org
Fri Jun 25 03:22:07 UTC 2021


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
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <https://lists.archlinux.org/pipermail/aur-dev/attachments/20210624/d2e48d54/attachment.sig>


More information about the aur-dev mailing list