diff --git a/Dockerfile b/Dockerfile index f1894c6..8fdf206 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,20 +1,19 @@ -FROM vectorim/element-web:v1.9.0 as builder +FROM alpine as builder -FROM alpine:latest +ARG VERSION=v1.11.12 -LABEL maintainer "me@jerryaldrichiii.com" +RUN apk add --no-cache wget -RUN apk add --no-cache lighttpd=1.4.54-r0 +WORKDIR /src -RUN chown -R lighttpd /var/log/lighttpd +RUN wget -O /src/element.tar.gz \ + https://github.com/vector-im/element-web/releases/download/$VERSION/element-$VERSION.tar.gz -USER lighttpd +RUN tar xvzf element.tar.gz -COPY lighttpd.conf /etc/lighttpd/lighttpd.conf -COPY mime-types.conf /etc/lighttpd/mime-types.conf +RUN mv element-v* element -COPY --from=builder /app /srv/http/ +FROM jerryaldrichiii/nginx-unprivileged:1.23.2 -EXPOSE 8080 - -CMD ["lighttpd", "-D", "-f", "/etc/lighttpd/lighttpd.conf"] +COPY ./config.json /usr/share/nginx/html/config.json +COPY --from=builder /src/element/ /usr/share/nginx/html/ diff --git a/README.md b/README.md new file mode 100644 index 0000000..4c67171 --- /dev/null +++ b/README.md @@ -0,0 +1,16 @@ +# Element Web + +How to run: + +``` +docker run \ + -it \ + -p 8080:8080 \ + jerryaldrichiii/element-web:latest +``` + +Add the following to mount your own config: + +``` +-v /path/to/your/config.json:/usr/share/nginx/html/config.json +``` diff --git a/config.json b/config.json index 1c48ce0..b2d0dc3 100644 --- a/config.json +++ b/config.json @@ -1,8 +1,8 @@ { "default_server_config": { "m.homeserver": { - "base_url": "https://matrix.jerryaldrichiii.com", - "server_name": "jerryaldrichiii.com" + "base_url": "https://matrix-client.matrix.org", + "server_name": "matrix.org" }, "m.identity_server": { "base_url": "https://vector.im" @@ -23,20 +23,25 @@ "https://scalar-staging.riot.im/scalar/api" ], "bug_report_endpoint_url": "https://element.io/bugreports/submit", - "defaultCountryCode": "US", - "showLabsSettings": false, + "default_country_code": "US", + "show_labs_settings": false, "features": { }, "default_federate": true, - "default_theme": "dark", - "roomDirectory": { + "default_theme": "light", + "room_directory": { "servers": [ - "jerryaldrichii.com" + "matrix.org" ] }, - "settingDefaults": { + "enable_presence_by_hs_url": { + "https://matrix.org": false, + "https://matrix-client.matrix.org": false + }, + "setting_defaults": { "breadcrumbs": true }, "jitsi": { - "preferredDomain": "meet.jerryaldrichiii.com" - } + "preferred_domain": "meet.element.io" + }, + "map_style_url": "https://api.maptiler.com/maps/streets/style.json?key=fU3vlMsMn4Jb6dnEIFsx" } diff --git a/lighttpd.conf b/lighttpd.conf deleted file mode 100644 index 7bde817..0000000 --- a/lighttpd.conf +++ /dev/null @@ -1,31 +0,0 @@ -var.logdir = "/var/log/lighttpd" -var.statedir = "/var/lib/lighttpd" - -server.modules = ( - "mod_access", - "mod_accesslog", - "mod_setenv", -) - -include "mime-types.conf" - -server.document-root = "/srv/http/" -server.pid-file = "/tmp/lighttpd.pid" - -server.errorlog-use-syslog = "enable" -accesslog.use-syslog = "enable" - -server.indexfiles = ("index.html") - -server.port = 8080 - -setenv.add-response-header = ( - "X-Frame-Options" => "SAMEORIGIN", - "X-Content-Type-Options" => "nosniff", - "X-XSS-Protection" => "1; mode=block", - "Content-Security-Policy" => "frame-ancestors 'none'", -) - -url.access-deny = ("~", ".inc") - -server.network-backend = "writev" diff --git a/mime-types.conf b/mime-types.conf deleted file mode 100644 index 93ed465..0000000 --- a/mime-types.conf +++ /dev/null @@ -1,71 +0,0 @@ -mimetype.assign = ( - ".svg" => "image/svg+xml", - ".svgz" => "image/svg+xml", - ".pdf" => "application/pdf", - ".sig" => "application/pgp-signature", - ".spl" => "application/futuresplash", - ".class" => "application/octet-stream", - ".ps" => "application/postscript", - ".torrent" => "application/x-bittorrent", - ".dvi" => "application/x-dvi", - ".gz" => "application/x-gzip", - ".pac" => "application/x-ns-proxy-autoconfig", - ".swf" => "application/x-shockwave-flash", - ".tar.gz" => "application/x-tgz", - ".tgz" => "application/x-tgz", - ".tar" => "application/x-tar", - ".zip" => "application/zip", - ".dmg" => "application/x-apple-diskimage", - ".mp3" => "audio/mpeg", - ".m3u" => "audio/x-mpegurl", - ".wma" => "audio/x-ms-wma", - ".wax" => "audio/x-ms-wax", - ".ogg" => "application/ogg", - ".wav" => "audio/x-wav", - ".gif" => "image/gif", - ".jpg" => "image/jpeg", - ".jpeg" => "image/jpeg", - ".png" => "image/png", - ".xbm" => "image/x-xbitmap", - ".xpm" => "image/x-xpixmap", - ".xwd" => "image/x-xwindowdump", - ".css" => "text/css", - ".html" => "text/html", - ".htm" => "text/html", - ".js" => "text/javascript", - ".asc" => "text/plain", - ".c" => "text/plain", - ".h" => "text/plain", - ".cc" => "text/plain", - ".cpp" => "text/plain", - ".hh" => "text/plain", - ".hpp" => "text/plain", - ".conf" => "text/plain", - ".log" => "text/plain", - ".text" => "text/plain", - ".txt" => "text/plain", - ".diff" => "text/plain", - ".patch" => "text/plain", - ".ebuild" => "text/plain", - ".eclass" => "text/plain", - ".rtf" => "application/rtf", - ".bmp" => "image/bmp", - ".tif" => "image/tiff", - ".tiff" => "image/tiff", - ".ico" => "image/x-icon", - ".dtd" => "text/xml", - ".xml" => "text/xml", - ".mpeg" => "video/mpeg", - ".mpg" => "video/mpeg", - ".mov" => "video/quicktime", - ".qt" => "video/quicktime", - ".avi" => "video/x-msvideo", - ".asf" => "video/x-ms-asf", - ".asx" => "video/x-ms-asf", - ".wmv" => "video/x-ms-wmv", - ".bz2" => "application/x-bzip", - ".tbz" => "application/x-bzip-compressed-tar", - ".wasm" => "application/wasm", - ".tar.bz2" => "application/x-bzip-compressed-tar" - ) -