Technology Blogs by SAP
Learn how to extend and personalize SAP applications. Follow the SAP technology blog for insights into SAP BTP, ABAP, SAP Analytics Cloud, SAP HANA, and more.
cancel
Showing results for 
Search instead for 
Did you mean: 
pascal_wasem1
Explorer
Ever wanted to serve the OpenUI5 SDK from a docker image?

Just make sure you have Docker up an running so that you can build the image using this Dockerfile:
FROM nginx:1.15.8-alpine

#https://openui5.hana.ondemand.com/downloads/openui5-sdk-1.61.2.zip

ARG ui5_version="1.61.2"
ARG ui5_filename="openui5-sdk-${ui5_version}.zip"
ARG ui5_url="https://openui5.hana.ondemand.com/downloads/${ui5_filename}"

RUN apk add --no-cache --virtual .sdk wget unzip

RUN mkdir -p /var/www

RUN wget ${ui5_url} --no-check-certificate -P /var/www

RUN unzip -o /var/www/${ui5_filename} -d /var/www

RUN apk del .sdk

RUN rm /var/www/${ui5_filename}

COPY ./nginx.conf /etc/nginx/conf.d/default.conf

EXPOSE 80

The specified OpenUI5 SDK version (1.61.2) will be downloaded and unzipped for your convenience.

All files will be served using Nginx, we just have to provide a proper nginx.conf file:
server {
listen 80;
root /var/www/;

# avoid caching
# see https://stackoverflow.com/questions/40243633/disable-nginx-cache-for-javascript-files
add_header Last-Modified $date_gmt;
add_header Cache-Control 'no-store, no-cache, must-revalidate, proxy-revalidate, max-age=0';
if_modified_since off;
expires off;
etag off;
}

If you want to use Docker Compose your docker-compose.yml could look like this:
version: '2.1'

services:
openui5_sdk:
build:
context: ./
args:
ui5_version: "1.61.2"
restart: always
ports:
- 5000:80

Simply change the ui5_version and port mapping (5000:80) to your needs.

After running docker-compose up -d --build you should be able to browse to e.g.  http://localhost:5000 or http://localhost:5000/resources/sap-ui-core.js

Couldn't be easier than that!

All files can be found here: https://github.com/pwasem/openui5-sdk-docker

Enjoy!