Skip to content
This repository has been archived by the owner on Dec 19, 2024. It is now read-only.

Commit

Permalink
#20 update image to senzingapi-tools (#21)
Browse files Browse the repository at this point in the history
* #20 update image to senzingapi-tools

* cl updated for 1.1.0
  • Loading branch information
arawinters authored Aug 26, 2022
1 parent f37805b commit b267e17
Show file tree
Hide file tree
Showing 4 changed files with 61 additions and 53 deletions.
7 changes: 6 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,11 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
[markdownlint](https://dlaa.me/markdownlint/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [1.0.0] - 2022-5-10
## [1.1.0] - 2022-08-26

### Modified
- Docker image Base Image updated to use `[email protected]`

## [1.0.0] - 2022-05-10

Initial release. Includes all functionality necessary to invoke a web-based terminal from inside of the entity-web-search-app admin context.
70 changes: 39 additions & 31 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,23 +1,43 @@
ARG BASE_IMAGE=senzing/senzingapi-tools:3.2.0
ARG BASE_BUILDER_IMAGE=node:lts-buster-slim

ARG IMAGE_NAME="senzing/entity-search-web-app-console"
ARG IMAGE_MAINTAINER="[email protected]"
ARG IMAGE_VERSION="1.1.0"

# -----------------------------------------------------------------------------
# Stage: builder
# -----------------------------------------------------------------------------

FROM ${BASE_IMAGE} AS builder
FROM ${BASE_BUILDER_IMAGE} AS builder

# Set Shell to use for RUN commands in builder step.

ENV REFRESHED_AT=2022-08-25

LABEL Name="senzing/entity-search-web-app-console" \
Maintainer="[email protected]" \
Version="1.1.0"

# Run as "root" for system installation.

USER root

# Set working directory.

WORKDIR /app

# Add `/app/node_modules/.bin` to $PATH

ENV PATH /app/node_modules/.bin:$PATH

# Install and cache app dependencies.

COPY package.json /app/package.json
COPY package-lock.json /app/package-lock.json

# Build js packages.

# Currently there is no reason to do this step
# But there will be once ticket #17 is done
# RUN npm config set loglevel warn \
# && npm i --production
# && npm run build

# Install packages via apt for building fio.

RUN apt-get update \
Expand All @@ -43,7 +63,6 @@ RUN mkdir /tmp/fio \
&& cd \
&& rm -rf /tmp/fio


# -----------------------------------------------------------------------------
# Stage: Final
# -----------------------------------------------------------------------------
Expand All @@ -54,9 +73,9 @@ FROM ${BASE_IMAGE} AS runner

ENV REFRESHED_AT=2022-08-25

LABEL Name="senzing/entity-search-web-app-console" \
Maintainer="[email protected]" \
Version="1.1.0"
LABEL Name=${IMAGE_NAME} \
Maintainer=${IMAGE_MAINTAINER} \
Version=${IMAGE_VERSION}

# Define health check.

Expand All @@ -70,25 +89,19 @@ USER root

RUN apt-get update \
&& apt-get -y install \
curl \
elvis-tiny \
htop \
iotop \
jq \
less \
libpq-dev \
libssl1.1 \
net-tools \
odbcinst \
openssh-server \
postgresql-client \
procps \
python3-dev \
python3-pip \
sqlite3 \
strace \
tree \
unixodbc-dev \
unzip \
wget \
zip \
Expand All @@ -114,6 +127,7 @@ RUN pip3 install --upgrade pip \
&& rm /requirements.txt

# Copy files from repository.

COPY ./rootfs /
COPY ./run /app/run
COPY package.json /app
Expand All @@ -125,30 +139,24 @@ COPY --from=builder "/usr/local/bin/fio" "/usr/local/bin/fio"

# Install packages via npm
WORKDIR /app
#RUN npm install -g npm
RUN npm i --production

# Runtime environment variables.
# The port for the Flask is 5000.

ENV LANGUAGE=C
ENV LC_ALL=C.UTF-8
ENV LD_LIBRARY_PATH=/opt/senzing/g2/lib:/opt/senzing/g2/lib/debian:/opt/IBM/db2/clidriver/lib
ENV ODBCSYSINI=/etc/opt/senzing
ENV PATH=${PATH}:/opt/senzing/g2/python:/opt/IBM/db2/clidriver/adm:/opt/IBM/db2/clidriver/bin
ENV PYTHONPATH=/opt/senzing/g2/python
ENV PYTHONUNBUFFERED=1
ENV SENZING_DOCKER_LAUNCHED=true
ENV SENZING_ETC_PATH=/etc/opt/senzing
ENV SENZING_SKIP_DATABASE_PERFORMANCE_TEST=true
ENV SENZING_SSHD_SHOW_PERFORMANCE_WARNING=true
ENV TERM=xterm
EXPOSE 5000

# Make non-root container.

RUN addgroup --gid 1004 consoleusers \
&& useradd -u 1001 -g 1004 -m senzing -s /bin/bash
USER 1001

# Runtime environment variables.

ENV LC_ALL=C.UTF-8 \
LC_CTYPE=C.UTF-8 \
SENZING_SSHD_SHOW_PERFORMANCE_WARNING=true

# Runtime execution.
WORKDIR /app
ENTRYPOINT [ "node" ]
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@senzing/entity-search-web-app-console",
"version": "1.0.0",
"version": "1.1.0",
"description": "A nodejs websocket server that spawns a PTY to provide shell access to EDA Tools and utilities",
"main": "run xterm/index.js",
"scripts": {
Expand Down
35 changes: 15 additions & 20 deletions requirements.txt
Original file line number Diff line number Diff line change
@@ -1,20 +1,15 @@
click==7.0
csvkit
eventlet
flask-socketio==3.3.1
flask==1.0.2
fuzzywuzzy
itsdangerous==1.1.0
jinja2==2.11.3
markupsafe==1.1.1
pandas
ptable
pyodbc
pysnooper
python-engineio==3.9.0
python-levenshtein
python-socketio==3.1.2
setuptools
six==1.12.0
werkzeug==0.15.3
psycopg2
click==8.1.3
csvkit==1.0.7
Flask-SocketIO==5.2.0
Flask==2.1.3
fuzzywuzzy==0.18.0
Jinja2==3.1.2
MarkupSafe==2.1.1
pandas==1.4.3
pyodbc==4.0.34
PySnooper==1.1.1
python-engineio==4.3.3
python-Levenshtein==0.12.2
python-socketio==5.7.1
setuptools==63.2.0
six==1.16.0

0 comments on commit b267e17

Please sign in to comment.