From 944c5712103db7535db6ab3f8b1633af1b489848 Mon Sep 17 00:00:00 2001 From: Innei Date: Fri, 9 Jun 2023 12:12:19 +0800 Subject: [PATCH] fix: docker build --- apps/core/src/app.config.ts | 1 - docker-compose.yml | 6 +++++- docker-run.sh | 16 ++++++++++++++++ dockerfile | 1 + scripts/workflow/test-docker.sh | 4 +--- 5 files changed, 23 insertions(+), 5 deletions(-) create mode 100644 docker-run.sh diff --git a/apps/core/src/app.config.ts b/apps/core/src/app.config.ts index 710a29dd..ec2a9aee 100644 --- a/apps/core/src/app.config.ts +++ b/apps/core/src/app.config.ts @@ -46,7 +46,6 @@ const commander = program .option( '--encrypt_enable', 'enable encrypt security field, please remember encrypt key.', - false, ) .option( '--encrypt_algorithm ', diff --git a/docker-compose.yml b/docker-compose.yml index cffce6f2..aa443c24 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -4,10 +4,14 @@ services: app: container_name: mx-server image: innei/mx-server:latest - command: node index.js --redis_host=redis --db_host=mongo --allowed_origins=${ALLOWED_ORIGINS} --jwt_secret=${JWT_SECRET} --color --encrypt_key=${ENCRYPT_KEY} --encrypt_enable=${ENCRYPT_ENABLE} + command: sh ./docker-run.sh environment: - TZ=Asia/Shanghai - NODE_ENV=production + - ALLOWED_ORIGINS + - JWT_SECRET + - ENCRYPT_KEY + - ENCRYPT_ENABLE volumes: - ./data/mx-space:/root/.mx-space ports: diff --git a/docker-run.sh b/docker-run.sh new file mode 100644 index 00000000..92625740 --- /dev/null +++ b/docker-run.sh @@ -0,0 +1,16 @@ +#!/bin/bash + +command="node index.js --redis_host=redis --db_host=mongo \ + --allowed_origins=${ALLOWED_ORIGINS} \ + --jwt_secret=${JWT_SECRET} \ + --color" + +if [ -n "$ENCRYPT_KEY" ]; then + command+=" --encrypt_key=${ENCRYPT_KEY}" +fi + +if [ "$ENCRYPT_ENABLE" = "true" ]; then + command+=" --encrypt_enable " +fi + +exec $command diff --git a/dockerfile b/dockerfile index bafc54ee..0b6b4c5e 100644 --- a/dockerfile +++ b/dockerfile @@ -14,6 +14,7 @@ RUN apk add zip unzip mongodb-tools bash fish rsync jq curl --no-cache WORKDIR /app COPY --from=builder /app/out . COPY --from=builder /app/assets ./assets +COPY ./docker-run.sh . ENV TZ=Asia/Shanghai EXPOSE 2333 diff --git a/scripts/workflow/test-docker.sh b/scripts/workflow/test-docker.sh index a4d444c6..d0a99c13 100644 --- a/scripts/workflow/test-docker.sh +++ b/scripts/workflow/test-docker.sh @@ -18,9 +18,7 @@ if [[ $? -ne 0 ]]; then exit 1 fi -curl https://cdn.jsdelivr.net/gh/mx-space/mx-server@master/docker-compose.yml >docker-compose.yml - -docker-compose up -d +(docker-compose up &) if [[ $? -ne 0 ]]; then echo "failed to run docker-compose instance"