47 Commits

Author SHA1 Message Date
renovate[bot]
5aecdebbc7 Update all non-major dependencies (#30037)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-05-28 16:31:45 +00:00
renovate[bot]
7d8f0c7832 Update nginxinc/nginx-unprivileged:alpine-slim Docker digest to 2acffd8 (#30030)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-05-28 16:23:04 +00:00
renovate[bot]
e078dc114b Update Node.js to f16d8e8 (#30031)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-05-28 15:30:22 +00:00
renovate[bot]
972366b5ae Pin dependencies (#29946)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-05-13 12:31:07 +00:00
renovate[bot]
ee8c1ffef4 Update all non-major dependencies (#29758)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-04-15 18:45:41 +00:00
Andrew Ferrazzutti
e537da4251 Docker: Use nginx-unprivileged as base image (#29353)
Instead of manually tweaking directory ownership & pidfile config to
enable running as non-root, use the official first-party base image for
achieving non-root.

Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2025-03-27 20:43:13 +00:00
Ben Banfield-Zanin
2052080d7d Fix Docker Healthcheck (#29471)
* Correct test for docker container being healthy

* Correct docker healthcheck for busybox wget

* Repeatedly check the health state of the docker container

* Use until loop & rely on timeout-minutes

* Fix check to look at healthy state

---------

Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2025-03-11 18:04:33 +00:00
renovate[bot]
b721505211 Update all non-major dependencies (#29415)
* Update all non-major dependencies

* Iterate

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2025-03-04 17:03:32 +00:00
Michael Telatynski
2e883b40eb Add docker healthcheck (#29351)
* Add docker healthcheck

and test ELEMENT_WEB_PORT envvar

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Iterate

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Iterate

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Iterate

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Iterate

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2025-02-25 09:16:22 +00:00
Michael Telatynski
8ef84349b5 Dynamically load Element Web modules in Docker entrypoint (#29346)
* Dynamically load Element Web modules in Docker entrypoint

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Iterate

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Drop environment for PR runs

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Iterate

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2025-02-24 16:54:57 +00:00
Richard van der Hoff
3fb10baedf Docker: run as non-root (#28849)
* Docker: allow configuration of HTTP listen port via env var

* Update docs/install.md

Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>

* prettier

* Docker: run as non-root

* Simplify sed incantation

---------

Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2025-01-03 22:54:52 +00:00
Richard van der Hoff
703149d76d Docker: allow configuration of HTTP listen port via env var (#28840)
* Docker: allow configuration of HTTP listen port via env var

* Update docs/install.md

Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>

* prettier

---------

Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2025-01-03 11:46:12 +00:00
Richard van der Hoff
417db4c9b2 Docker: remove redundant dos2unix calls (#28839)
I'm assuming these were here because, at some point, someone checked in some
files with CRLF line endings. However, they are no longer there, installing
dos2unix slows down the build, and just don't do that, m'kay?
2025-01-02 13:50:17 +00:00
renovate[bot]
7408a83618 Update dependency node to v22 (#28329)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-29 15:39:34 +00:00
Michael Telatynski
f0ee7f7905 Merge matrix-react-sdk into element-web
Merge remote-tracking branch 'repomerge/t3chguy/repomerge' into t3chguy/repo-merge

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-10-15 15:32:09 +01:00
Travis Ralston
3f4ae7382b dos2unix more Docker scripts 2024-08-06 13:10:20 -06:00
Michael Telatynski
122d4d3503 Increase yarn timeout (#25377) 2023-05-16 09:43:02 +01:00
renovate[bot]
2bcfb257ea Update Node.js to v20 (#25258)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2023-05-03 12:11:57 +00:00
Michael Telatynski
39061f9b8c Update docker base images (#24966) 2023-03-29 08:30:16 +01:00
Michael Telatynski
3366ed1af0 Run dockerhub builder stage without emulation (#23602) 2022-10-26 11:49:51 +01:00
Michael Telatynski
aa6b1d128a Fix dockerhub builds (#23477) 2022-10-13 09:00:39 +01:00
Michael Telatynski
d86e897ba6 Rework dockerhub builds (#22026)
* WIP

* Attempt to wire up dockerhub building in GHA

* Fix issue with mime types

* Skip linux/arm, Cypress only installs on 64-bit

* Update dockerhub.yaml

* Update comment
2022-07-29 14:30:16 +01:00
James Salter
b0abbfacd4 Fix Docker build versioning (#20077)
* Centralise version scripts and fix Docker version
* Refactor generation of a git-hash-based version into get-version-from-git
* Refactor normalization of versions (stripping leading v) into normalize-version.sh
* Call get-version-from-git from ci_package.sh, call normalize-version from package.sh
* Refactor docker-write-version.sh into docker-package.sh, which both writes the
  version file and invokes yarn build passing VERSION
* Normalize the version received from the server
2021-12-07 15:11:01 +11:00
James Salter
212138b017 Fix path 2021-09-28 13:24:44 +01:00
James Salter
a3c4fac375 Use custom nginx conf 2021-09-28 12:15:34 +01:00
Michael Telatynski
12b93c1696 Revert "Don't run nginx as root in docker" 2021-07-14 09:40:46 +01:00
Michael Telatynski
503995270c Merge pull request #17927 from JuniorJPDJ/patch-1 2021-07-14 09:08:09 +01:00
J. Ryan Stinnett
3c10bc54ba Remove canvas native dependencies from Dockerfile
As of https://github.com/vector-im/element-web/pull/17967, `canvas` is no longer
used, so we don't need install these native deps for building it on arm64.
2021-07-13 09:59:02 +01:00
JuniorJPDJ
09d8ac1622 Don't run nginx as root in docker
Signed-off-by: Jacek Pruciak <git@juniorjpdj.pl>
2021-07-10 06:12:59 +02:00
Jason Robinson
26380719a1 Fix whitespace in Dockerfile
Upstreamed whitespace fix from a fork, to be aligned with the other indented line :)
2021-06-23 15:42:30 +03:00
Travis Ralston
dfa70b0637 Revert "Docker image: serve pre-compressed assets using gzip_static" 2021-03-31 17:59:39 -06:00
Martin Häger
b8b8a5ee85 Docker image: serve pre-compressed assets using gzip_static
Signed-off-by: Martin Häger <martin.haeger@gmail.com>
2021-03-16 22:41:43 +01:00
J. Ryan Stinnett
b2a93c3b64 Move to newer base image for Docker builds
This updates to Node 14 (current LTS) as well as moving from Debian Stretch to
Buster for the base OS. The Debian upgrade brings along a newer Python 3.8,
which is actively supported.
2021-01-25 12:58:39 +00:00
J. Ryan Stinnett
d64639c70a Rename Docker repo in docs
We now have a Docker repo named `element-web`, so this updates docs to match.

Fixes https://github.com/vector-im/element-web/issues/14930
2020-10-28 14:32:25 +00:00
Matt Cengia
86185e8186 Document packages for installing Canvas via Docker
Signed-off-by: Matt Cengia <mattcen@mattcen.com>
2020-07-31 22:27:16 +10:00
Matt Cengia
fb79373a6d Bump node build version
When trying to build the Docker image, I kept receiving an out-of-memory
error from Webpack. This issue is apparently explained at
https://github.com/webpack/webpack/issues/1914.
Several comments in the issue suggested using Node 12 or above. Doing so
resolved this issue for me.

Signed-off-by: Matt Cengia <mattcen@mattcen.com>
2020-07-16 16:21:00 +10:00
Matt Cengia
846cebe9ff Add build dependencies for 'canvas' to Dockerfile
When building the Docker image on amd64, canvas can be installed
from a pre-built binary. When building on an another architecture,
however, such as arm (e.g. on a Raspberry Pi), these binaries need to be
built locally, as per https://www.npmjs.com/package/canvas#compiling.
These added dependencies facilitate this. See also, issue #14400.

Signed-off-by: Matt Cengia <mattcen@mattcen.com>
2020-07-16 16:21:00 +10:00
J. Ryan Stinnett
b6963d0e5c Use bash in Docker scripts
Our Docker scripts use Bash-style conditionals that aren't supported by the
default Debian shell.
2020-01-22 17:45:22 +00:00
Travis Ralston
51a97571a0 Use debian to build the Docker image
Fixes not having certain OS capabilities to build some packages.
2020-01-22 09:08:05 -07:00
Will Hunt
625c21a8af @babolivier showed me the way 2020-01-15 17:07:38 +00:00
Half-Shot
d515bad46f Support application/wasm in docker
Signed-off-by: Half-Shot <will@half-shot.uk>
2020-01-15 13:13:03 +00:00
Travis Ralston
726bf35b76 Fix Docker build for develop and publish a /version file
Fixes https://github.com/vector-im/riot-web/issues/10426
2019-12-02 16:58:50 -07:00
Slavi Pantaleev
4e63e3b0de Base Docker image on nginx:alpine, not the larger nginx:latest
`nginx:latest` is based on Debian Stretch and is listed as being 45MB,
while `nginx:alpine` is based on Alpine 3.9 and is just 7MB.

Basing the riot-web Docker image on `nginx:alpine` should
make it 38MB smaller compared to the current situation.

The nginx version seems to be "latest mainline" on both (currently 1.15.12),
judging by each Dockerfile:
- e5123eea0d/mainline/stretch/Dockerfile
- e5123eea0d/mainline/alpine/Dockerfile
2019-05-27 11:57:37 +03:00
Travis Ralston
3123b429f7 Increase timeout for yarn install in Docker builds
Otherwise we run into problems where Docker Hub's limited machines timeout trying to download our dependencies
2019-05-15 16:24:25 -06:00
Travis Ralston
1bb70930fa Support custom SDKs and use yarn 2019-04-10 15:47:02 -06:00
kaiyou
e47fae034a Add some layers to cache installed dependencies at build time 2018-12-06 10:00:20 +01:00
kaiyou
045b0b9889 Add a two-stages Dockerfile for building Riot 2018-12-04 16:51:37 +01:00