Dockerize reactclient.
[?]
Jan 23, 2021, 5:01 PM
XA7SOE6JNY7BKAUOUGAROVLGXO7E3MSHVG4LZYHSPITH5PU4W5ZQCDependencies
- [2]
3GLHIR4FAdd migrate script for prod system. - [3]
GMYPBCWEMake docker-compose work. - [4]
IR75ZMX3Return actual events for interval ends, not just timestamps. - [*]
LEINLS3XUpdate deployment documentation. - [*]
4ZLEDBK7Initial attempts at dockerizing, cabal isn't cooperating.
Change contents
- edit in Makefile at line 12
build-reactclient-image:docker build -t aftok/aftok-reactclient:latest -f ./docker/Dockerfile-reactclient . - replacement in deploy/docker-compose.prod.yml at line 28
entrypoint: /opt/aftok/aftok-client-cp.shentrypoint: /opt/aftok/aftok-client-cp.sh dist - file addition: Dockerfile-reactclient[7.1510]
FROM ubuntu:focalMAINTAINER Kris Nuttycombe <kris@aftok.com>ENV LANG C.UTF-8ENV TZ America/DenverRUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone# Install build tools & library dependenciesRUN apt-get update && \apt-get install -y --no-install-recommends \libtinfo5 nodejs npm netbaseRUN apt-get install -y --no-install-recommends ca-certificatesRUN update-ca-certificatesRUN mkdir -p /opt/aftok/clientWORKDIR /opt/aftok/client# Add dist-volume directory for use with docker-compose sharing# of client executables via volumes.ADD ./docker/aftok-client-cp.sh /opt/aftok/RUN chmod 700 /opt/aftok/aftok-client-cp.shRUN mkdir /opt/aftok/client/dist-volumeADD ./reactclient/package.json /opt/aftok/client/package.jsonRUN npm installENV PATH="./node_modules/.bin:${PATH}"# Add static assetsADD ./aftok.com /opt/aftok/client/staticsiteADD ./reactclient/src /opt/aftok/client/srcADD ./reactclient/public /opt/aftok/client/publicRUN npm run build - replacement in docker/aftok-client-cp.sh at line 4
cp -r /opt/aftok/client/dist/* /opt/aftok/client/dist-volumecp -r /opt/aftok/client/$1/* /opt/aftok/client/dist-volume - replacement in docker-compose.yml at line 27
entrypoint: /opt/aftok/aftok-client-cp.shentrypoint: /opt/aftok/aftok-client-cp.sh dist - edit in docker-compose.yml at line 31
target: /opt/aftok/client/dist-volumeaftok-reactclient:image: aftok/aftok-reactclient:latestcontainer_name: aftok-reactcliententrypoint: /opt/aftok/aftok-client-cp.sh buildvolumes:- type: volumesource: v_aftok-reactclient - edit in docker-compose.yml at line 73
read_only: true- type: volumesource: v_aftok-reactclienttarget: /opt/static/app2 - edit in docker-compose.yml at line 124
v_aftok-reactclient: