Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
69 changes: 55 additions & 14 deletions docker-compose.yml
Original file line number Diff line number Diff line change
@@ -1,14 +1,18 @@
volumes:
comify-mongo-data:
comify-minio-data:
mongo-data:
seaweed-master-data:
seaweed-volume-data:
seaweed-filer-data:
keycloak-data:

services:

mongo:
image: mongo:8.0.12
container_name: mongo
restart: always
volumes:
- comify-mongo-data:/data/db
- mongo-data:/data/db
- "${MONGODB_INIT_PATH}:/docker-entrypoint-initdb.d"
ports:
- "${MONGODB_PORT_NUMBER:-27017}:27017"
Expand All @@ -18,9 +22,8 @@ services:

mongo-express:
image: mongo-express:1.0.2-18
container_name: mongo-express
restart: always
depends_on:
- mongo
ports:
- "${MONGO_EXPRESS_PORT_NUMBER:-8081}:8081"
environment:
Expand All @@ -29,26 +32,64 @@ services:
ME_CONFIG_MONGODB_ADMINUSERNAME: ${MONGODB_ROOT_USERNAME}
ME_CONFIG_MONGODB_ADMINPASSWORD: ${MONGODB_ROOT_PASSWORD}
ME_CONFIG_MONGODB_URL: "mongodb://${MONGODB_ROOT_USERNAME}:${MONGODB_ROOT_PASSWORD}@mongo:27017/"
depends_on:
- mongo

seaweedfs-master:
image: chrislusf/seaweedfs:4.07
container_name: seaweedfs-master
ports:
- "9333:9333"
- "19333:19333"
volumes:
- seaweed-master-data:/data
command: "master -ip=seaweedfs-master -ip.bind=0.0.0.0 -port=9333 -port.grpc=19333 -mdir=/data"

seaweedfs-volume:
image: chrislusf/seaweedfs:4.07
container_name: seaweedfs-volume
ports:
- "9222:8080"
- "18080:18080"
volumes:
- seaweed-volume-data:/data
command: "volume -ip=seaweedfs-volume -ip.bind=0.0.0.0 -mserver=seaweedfs-master:9333 -port=8080 -dir=/data"
depends_on:
- seaweedfs-master

minio:
image: minio/minio:RELEASE.2025-07-23T15-54-02Z
restart: always
seaweedfs-filer:
image: chrislusf/seaweedfs:4.07
container_name: seaweedfs-filer
ports:
- "9111:8888"
- "18888:18888"
volumes:
- comify-minio-data:/data
- seaweed-filer-data:/data
command: "filer -ip=seaweedfs-filer -ip.bind=0.0.0.0 -master=seaweedfs-master:9333 -port=8888"
depends_on:
- seaweedfs-master
- seaweedfs-volume

seaweedfs-s3:
image: chrislusf/seaweedfs:4.07
container_name: seaweedfs-s3
ports:
- "${MINIO_PORT_NUMBER:-9000}:9000"
- "${MINIO_ADMIN_PORT_NUMBER:-9001}:9001"
- "${SEAWEEDFS_PORT_NUMBER:-9000}:8333"
environment:
MINIO_ROOT_USER: ${MINIO_ROOT_USER}
MINIO_ROOT_PASSWORD: ${MINIO_ROOT_PASSWORD}
command: server --console-address ":9001" /data
AWS_ACCESS_KEY_ID: ${SEAWEEDFS_ROOT_USER}
AWS_SECRET_ACCESS_KEY: ${SEAWEEDFS_ROOT_PASSWORD}
command: "s3 -filer=seaweedfs-filer:8888 -ip.bind=0.0.0.0 -port=8333"
depends_on:
- seaweedfs-filer

keycloak:
image: quay.io/keycloak/keycloak:26.2
container_name: keycloak
restart: always
volumes:
- "${KEYCLOAK_IMPORT_PATH}:/opt/keycloak/data/import"
- "${KEYCLOAK_THEME_PATH}:/opt/keycloak/providers"
- keycloak-data:/opt/keycloak/data
ports:
- "${KEYCLOAK_PORT_NUMBER:-8080}:8080"
environment:
Expand Down
26 changes: 26 additions & 0 deletions docker/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# TimeTrap Docker Image
# Build this image from the project root directory

FROM node:24.12-alpine3.22

# Init root
RUN mkdir /opt/app
COPY package.json /opt/app/package.json
COPY package-lock.json /opt/app/package-lock.json
COPY jitar.json /opt/app/jitar.json

# Init dist
RUN mkdir /opt/app/dist
COPY dist /opt/app/dist

# Init services
RUN mkdir /opt/app/services
COPY services/standalone.json /opt/app/services/standalone.json

WORKDIR /opt/app

RUN npm ci --omit=dev

USER node

CMD ["npm", "run", "production"]
1 change: 1 addition & 0 deletions docker/build.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
docker build -t localhost:5000/comify:0.1.0 -f docker/Dockerfile .
1 change: 1 addition & 0 deletions docker/push.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
docker push localhost:5000/comify:0.1.0
15 changes: 9 additions & 6 deletions example.env
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,13 @@ OPENID_ISSUER="http://localhost:8080/realms/comify"
OPENID_CLIENT_ID="openid"
OPENID_CLIENT_SECRET=""
OPENID_REDIRECT_PATH="/rpc/domain/authentication/login"
OPENID_SECRET_KEY="development"
OPENID_ALLOW_INSECURE_REQUESTS=false

# LOGGING (database | console | void)
# HTTP (fetch | mapped)
HTTP_DRIVER="fetch"

# LOGGING (console | void)
LOGGING_DRIVER="console"
LOGGING_LEVEL="INFO"
LOGGING_DB_RECORD_TYPE="logs"
Expand All @@ -57,11 +61,10 @@ MONGO_EXPRESS_PORT_NUMBER=8081
MONGO_EXPRESS_USERNAME="development"
MONGO_EXPRESS_PASSWORD="development"

# MINIO
MINIO_ADMIN_PORT_NUMBER=9001
MINIO_PORT_NUMBER=9000
MINIO_ROOT_USER="development"
MINIO_ROOT_PASSWORD="development"
# SEAWEED FS
SEAWEEDFS_PORT_NUMBER=9000
SEAWEEDFS_ROOT_USER="development"
SEAWEEDFS_ROOT_PASSWORD="development"

# KEYCLOAK
KEYCLOAK_HTTP_ENABLED="true"
Expand Down
Loading
Loading