diff --git a/Dockerfile_app b/Dockerfile_app new file mode 100644 index 0000000..a4be0b5 --- /dev/null +++ b/Dockerfile_app @@ -0,0 +1,23 @@ +FROM openjdk:8-jdk-alpine + +RUN apk add gradle libpcap + +COPY ./ /app/ + +WORKDIR /app/ + +RUN gradle --no-daemon build + +RUN cp build/libs/packmate-*.jar app.jar + +ENV DB_USER ${PACKMATE_DB_USER:-packmate} +ENV DB_PASSWORD ${PACKMATE_DB_PASSWORD:-packmate_secret_password} +ENV DB_NAME ${PACKMATE_DB_DB:-packmate} +#ENV IFACE ${PACKMATE_INTERFACE:-eth0} +ENV LOCAL_IP ${PACKMATE_LOCAL_IP:-192.168.1.0} +ENV WEB_LOGIN ${PACKMATE_WEB_LOGIN:-BinaryBears} +ENV WEB_PASSWORD ${PACKMATE_WEB_PASSWORD:-123456} + +EXPOSE 65000:65000 + +CMD ./start.sh diff --git a/Dockerfile_db b/Dockerfile_db new file mode 100644 index 0000000..9998df9 --- /dev/null +++ b/Dockerfile_db @@ -0,0 +1,5 @@ +FROM postgres:12.0-alpine + +ENV POSTGRES_USER ${PACKMATE_DB_USER:-packmate} +ENV POSTGRES_PASSWORD ${PACKMATE_DB_PASSWORD:-packmate_secret_password} +ENV POSTGRES_DB ${PACKMATE_DB_DB:-packmate} diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..417667a --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,25 @@ +version: "3.4" +services: + packmate: + container_name: packmate-app + build: + context: . + dockerfile: Dockerfile_app + network: host + image: packmate-app:v1 + ports: + - "65000:65000" + links: + - db + depends_on: + - db + restart: always + db: + container_name: packmate-db + build: + context: . + dockerfile: Dockerfile_db + image: packmate-db:v1 + restart: always + + diff --git a/start.sh b/start.sh new file mode 100755 index 0000000..2fc1a5f --- /dev/null +++ b/start.sh @@ -0,0 +1,4 @@ +#!/bin/sh +IFACE=$(ls /sys/class/net | grep '^e') +echo "Capturing on interface ${IFACE}" +exec java -jar app.jar --spring.datasource.url="jdbc:postgresql://packmate-db/${DB_NAME}" --spring.datasource.username="${DB_USER}" --spring.datasource.password="${DB_PASSWORD}" --interface-name="${IFACE}" --local-ip="${LOCAL_IP}" --account-login="${WEB_LOGIN}" --account-password="${WEB_PASSWORD}" --server.port=65000