Commit Graph

35 Commits

Author SHA1 Message Date
Michele Adduci 74eb159a36 Updated Jetty and JRE in Docker, fixed Alpine build 2023-11-20 08:30:50 +01:00
HeinrichAD 8d7c681ae4 copy `pom.parent.xml` to docker container 2023-06-09 17:31:19 +02:00
Arnaud Roques 080cbaada9 chore: fix typo
https://github.com/plantuml/plantuml-server/issues/290
2023-05-17 19:13:46 +02:00
Florian a6e69b33eb docker: use always latest Graphviz release
This will change the Graphviz behaviour inside the docker container.
Until now it was always a fixed Graphviz version inside the Dockerfile.
With these changes the docker container will always use the latest Graphviz release if the version was not manually set via the docker build argument `GRAPHVIZ_VERSION`.

If not set as build arg fetch latest version of Graphviz based on their release name by default.
An alternative would be to use `tag_name`.

Also, to avoid the overhead of getting all kinds of relase data, GitLabs GraphQL interface could be used.
```bash
curl -s \
  -H "Content-Type:application/json" \
  -d '{"query": "{project(fullPath:\"graphviz/graphviz\"){releases(first:5,sort:RELEASED_AT_DESC){nodes{name}}}}"}' \
  "https://gitlab.com/api/graphql" \
| jq -r '.data.project.releases.nodes[].name' | sort -V -r | head -n 1
```
In GraphQL the alternative to `name` would be `tagName`.
2023-05-09 09:34:27 +02:00
Florian 5d7c4e1a03 update docker base images and reduce size
There were same base image and naming changes for the jetty and tomcat images plantuml-server uses => plantuml-server uses a pretty old and vulnerable images.

- update base images for jetty and tomcat
- add a alpine version for jetty (not tomcat has no official alpine version)
- add autoremove and clean commands after graphviz installation. This reduces the images by about ~280 MB
2023-05-05 17:33:39 -04:00
Florian e5d11fb89a update all dependencies (maven artifacts)
- PDF dependency was missing in the pom file the JDK8
  * We should think about creating a parent pom - in that case all plantuml dependencies could be in the parent pom and we would only the mantain one pom file.
    (It is also possible to drop the Java 8 support.)
  * Why do we not have any PDF tests?
- add rule to ignore version update hint with `-dev` followed by a dot and date (e.g. `0.37.0-dev.20230308`)
- migration from JUnit4 to JUnit5
2023-05-05 17:33:39 -04:00
Marco Beelen 385fa1274a feat: Keeps curl to support healthchecks
Closes #220
Closes #273
2023-04-12 12:14:35 +02:00
Florian Greinacher 972d136665 fix: add more missing libs 2023-04-11 19:26:09 +02:00
Florian Greinacher 329aae7fc6 fix: add missing build dependency for graphviz 2023-04-11 13:46:55 +02:00
Florian Greinacher 8a9825395a fix: use up-to-date graphviz version in tomcat image 2023-03-29 19:36:33 +02:00
Florian Greinacher df081c20a4 refactor: isolate build 2023-03-29 15:15:04 +02:00
Florian Greinacher 4137d8460e fix: use up-to-date graphviz version 2023-03-29 15:15:04 +02:00
Artur Propp 1245b15e01 Add explicit VOLUME instruction for jetty image
Set a mount point for read-only root file system configurations.
Without the explicit mount point definition in the image, we were facing
issues on Amazon ECS, because the directory got mounted with different
ownership (root) and mode (0755).

For reference please see also:
https://docs.aws.amazon.com/AmazonECS/latest/developerguide/bind-mounts.html#bind-mount-considerations
2023-03-08 17:30:00 +01:00
Florian Greinacher afd8bbcceb feat: support deep base URLs 2023-01-26 10:29:03 +01:00
Hans 7285ce1cc8 Update Dockerfile.jetty
change user
2022-11-07 13:00:28 +01:00
Hans a0ed47b51c add openshift permission 2022-11-07 13:00:28 +01:00
Florian 9cb9cec6ca update jetty and tomcat to latest version 2021-10-17 18:46:03 +02:00
Florian 221af78afc improve docker handling 2021-10-11 18:39:11 +02:00
Jackie Weng f08db467c8 Made jetty container support read-only file system 2021-05-12 23:32:24 +02:00
Peter Dave Hello 04af2a25d2 Remove `apt-get clean` in Dockerfile.{jetty,tomcat}
Also manually cleaned up `/var/lib/apt/lists` in original commits but
got conflict with #97, then removed.

Ref:
https://docs.docker.com/develop/develop-images/dockerfile_best-practices/

> In addition, when you clean up the apt cache by removing
> /var/lib/apt/lists it reduces the image size, since the apt cache is not
> stored in a layer.

> Official Debian and Ubuntu images automatically run apt-get clean,
> so explicit invocation is not required.
2021-04-23 22:25:45 +02:00
Abtin Gramian d53fb43ac4 Bump docker parent image versions to target Java 11 2020-07-21 22:42:05 +02:00
translucens 73739b7e85
revert builder's base image to based on OpenJDK8 (non-headless)
headless OpenJDK does not refer `http_proxy` environment variable, so build image inside proxy will fail.
resolves #98
2019-04-28 00:33:47 +09:00
translucens f878c0ec22
replace fonts to Google noto fonts 2019-04-14 02:46:09 +09:00
morotti 1b07c6d9c2 use different container names for jetty and tomcat so they can be built in parallel without conflicting 2019-03-31 23:51:41 +01:00
Olaf Meeuwissen 73c23724db Use ROOT as the BASE_URL
This fixes a misread of the README.md when preparing 055faca.
2018-12-03 18:54:18 +09:00
Olaf Meeuwissen 38772dedd3 Revert "Revert "Make the server's BASE_URL configurable""
This reverts commit 5501258087.
2018-12-03 18:30:47 +09:00
Arnaud Roques 5501258087 Revert "Make the server's BASE_URL configurable"
This reverts commit 055facac9e.
2018-11-30 22:30:03 +01:00
Olaf Meeuwissen 055facac9e Make the server's BASE_URL configurable
The "special" value of `ROOT` will serve requests on `/`.  Any other
value should serve on `/$BASE_URL` (as long as there are no slashes
in `BASE_URL` at least).

The default has been set to `plantuml` to better match documentation
in the README.md file.

Re #80, may help with #79.
2018-11-15 22:09:14 +09:00
Olaf Meeuwissen 3ce59edba7 Fix rendering of non-sequence diagrams
Although sequence diagrams render fine without, any(?) other diagram
type requires the  `GRAPHVIZ_DOT` environment variable to be set for
the server to produce usable output.
2018-11-15 21:59:52 +09:00
Olaf Meeuwissen 31a42da6bb Support building behind a proxy
In order to use this functionality, you need to pass `--build-arg`
options for the `http_proxy`, `https_proxy` and `no_proxy` values
that are suitable for *your* build environment.

If not behind a proxy, simply don't pass any `*_proxy` build args.
2018-11-15 21:53:00 +09:00
Olaf Meeuwissen d73dea3d58 Do not log download progress during build
This cuts down on the verbosity for at least some CI build logs.
2018-11-15 21:41:34 +09:00
Olaf Meeuwissen f0b05ab711 Remove unneeded packages and environment variables from the builder 2018-11-15 21:34:32 +09:00
David Ducatel 7fb25caeca Fix docker build problem on jetty 2017-12-13 10:31:39 +01:00
David Ducatel ae00bcc116 update build process
Using multi stage build in dockerfile
2017-10-20 20:20:26 +02:00
David Ducatel 5dd56095ba Add new docker images
Add tomcat container, jetty tag and self-builded docker file
2017-04-28 10:53:11 +02:00