diff --git a/Dockerfile b/Dockerfile index b308d089..9b724b4a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -90,67 +90,77 @@ RUN mkdir -p /opt/flyingfish RUN mkdir -p /var/log/flyingfish RUN mkdir -p /var/lib/flyingfish -# Copy/Install Schemas ---------------------------------------------------------------------------------------------------- +# Copy Schemas --------------------------------------------------------------------------------------------------------- WORKDIR /opt/flyingfish/schemas - COPY ./schemas/ ./ RUN rm -R node_modules | true RUN rm -R dist | true RUN rm package-lock.json | true -RUN npm install -RUN npm run build - -# Copy/Install Core ---------------------------------------------------------------------------------------------------- +# Copy Core ------------------------------------------------------------------------------------------------------------ WORKDIR /opt/flyingfish/core - COPY ./core/ ./ RUN rm -R node_modules | true RUN rm -R dist | true RUN rm package-lock.json | true -RUN npm install -RUN npm run build +# Copy Plugins --------------------------------------------------------------------------------------------------------- -# Copy/Install DemoPlugin ---------------------------------------------------------------------------------------------- +WORKDIR /opt/flyingfish/plugins +COPY ./plugins/package.json ./ -WORKDIR /opt/flyingfish/plugins/letsencrypt +RUN rm -R node_modules | true +RUN rm -R dist | true +RUN rm package-lock.json | true +WORKDIR /opt/flyingfish/plugins/letsencrypt COPY ./plugins/letsencrypt/ ./ RUN rm -R node_modules | true RUN rm -R dist | true RUN rm package-lock.json | true -RUN npm install -RUN npm run build - -# Copy/Install Backend ------------------------------------------------------------------------------------------------- +# Copy/ Backend -------------------------------------------------------------------------------------------------------- WORKDIR /opt/flyingfish/backend - COPY backend ./ RUN rm -R node_modules | true RUN rm -R dist | true RUN rm package-lock.json | true -RUN npm install -RUN npm run build - # Copy/Install Frontend ------------------------------------------------------------------------------------------------ WORKDIR /opt/flyingfish/frontend - COPY frontend ./ + RUN rm -R ./node_modules | true RUN rm -R ./dist | true RUN rm ./package-lock.json | true +# Install All ---------------------------------------------------------------------------------------------------------- + +WORKDIR /opt/flyingfish +COPY ./package.json ./ +RUN npm install + +WORKDIR /opt/flyingfish/schemas +RUN npm run build + +WORKDIR /opt/flyingfish/core +RUN npm run build + +WORKDIR /opt/flyingfish/plugins/letsencrypt +RUN npm run build + +WORKDIR /opt/flyingfish/backend +RUN npm run build + +WORKDIR /opt/flyingfish/frontend RUN npm install --force RUN npm run gulp-copy-data RUN npm run gulp-build-webpack diff --git a/ddnsserver/Dockerfile b/ddnsserver/Dockerfile index 0a26f7d0..6f1133a6 100644 --- a/ddnsserver/Dockerfile +++ b/ddnsserver/Dockerfile @@ -12,37 +12,27 @@ RUN mkdir -p /opt/flyingfish/ddnsserver/dist RUN mkdir -p /opt/flyingfish/ddnsserver/node_modules RUN mkdir -p /var/lib/flyingfish - -# Copy/Install Schemas ---------------------------------------------------------------------------------------------------- +# Copy Schemas --------------------------------------------------------------------------------------------------------- WORKDIR /opt/flyingfish/schemas - COPY ./schemas/ ./ RUN rm -R node_modules | true RUN rm -R dist | true RUN rm package-lock.json | true -RUN npm install -RUN npm run build - -# Copy/Install Core ---------------------------------------------------------------------------------------------------- +# Copy Core ------------------------------------------------------------------------------------------------------------ WORKDIR /opt/flyingfish/core - COPY ./core/ ./ RUN rm -R node_modules | true RUN rm -R dist | true RUN rm package-lock.json | true -RUN npm install -RUN npm run build - -# Copy/Install ddnsserver ---------------------------------------------------------------------------------------------- +# Copy ddnsserver ------------------------------------------------------------------------------------------------------ WORKDIR /opt/flyingfish/ddnsserver - COPY ./ddnsserver ./ RUN rm -R Dockerfile | true @@ -50,8 +40,23 @@ RUN rm -R node_modules | true RUN rm -R dist | true RUN rm package-lock.json | true +# Install -------------------------------------------------------------------------------------------------------------- + +WORKDIR /opt/flyingfish +COPY ./package.json ./ RUN npm install + +WORKDIR /opt/flyingfish/schemas +RUN npm run build + +WORKDIR /opt/flyingfish/core RUN npm run build + +WORKDIR /opt/flyingfish/ddnsserver +RUN npm run build + +# ---------------------------------------------------------------------------------------------------------------------- + RUN npm install supervisor -g EXPOSE 22 diff --git a/himhip/Dockerfile b/himhip/Dockerfile index 8c58a161..44dd928c 100644 --- a/himhip/Dockerfile +++ b/himhip/Dockerfile @@ -5,51 +5,62 @@ RUN apt-get upgrade -y RUN apt-get install -y iproute2 RUN apt-get install -y net-tools -RUN mkdir -p /opt/schemas -RUN mkdir -p /opt/core -RUN mkdir -p /opt/app -RUN mkdir -p /opt/app/dist -RUN mkdir -p /opt/app/node_modules +# ---------------------------------------------------------------------------------------------------------------------- -# Copy/Install Schemas ---------------------------------------------------------------------------------------------------- +RUN mkdir -p /opt/flyingfish +RUN mkdir -p /opt/flyingfish/schemas +RUN mkdir -p /opt/flyingfish/core +RUN mkdir -p /opt/flyingfish/himhip +RUN mkdir -p /opt/flyingfish/himhip/dist +RUN mkdir -p /opt/flyingfish/himhip/node_modules -WORKDIR /opt/schemas +# Copy Schemas --------------------------------------------------------------------------------------------------------- +WORKDIR /opt/flyingfish/schemas COPY ./schemas/ ./ RUN rm -R node_modules | true RUN rm -R dist | true RUN rm package-lock.json | true -RUN npm install -RUN npm run build - -# Copy/Install Core ---------------------------------------------------------------------------------------------------- - -WORKDIR /opt/core +# Copy Core ------------------------------------------------------------------------------------------------------------ +WORKDIR /opt/flyingfish/core COPY ./core/ ./ RUN rm -R node_modules | true RUN rm -R dist | true RUN rm package-lock.json | true -RUN npm install -RUN npm run build - -# Copy/Install HimHip -------------------------------------------------------------------------------------------------- +# Copy HimHip ---------------------------------------------------------------------------------------------------------- -WORKDIR /opt/app - -COPY ./himhip/ ./ +WORKDIR /opt/flyingfish/himhip +COPY ./himhip ./ RUN rm -R Dockerfile | true RUN rm -R node_modules | true RUN rm -R dist | true RUN rm package-lock.json | true +# Install -------------------------------------------------------------------------------------------------------------- + +WORKDIR /opt/flyingfish +COPY ./package.json ./ RUN npm install + +WORKDIR /opt/flyingfish/schemas +RUN npm run build + +WORKDIR /opt/flyingfish/core +RUN npm run build + +WORKDIR /opt/flyingfish/himhip RUN npm run build + +# ---------------------------------------------------------------------------------------------------------------------- + RUN npm install supervisor -g -CMD [ "node", "dist/main.js", "--envargs=1"] \ No newline at end of file +WORKDIR /opt/flyingfish + +CMD [ "node", "himhip/dist/main.js", "--envargs=1"] \ No newline at end of file diff --git a/sshserver/Dockerfile b/sshserver/Dockerfile index bd005f53..fba586d8 100644 --- a/sshserver/Dockerfile +++ b/sshserver/Dockerfile @@ -13,37 +13,27 @@ RUN mkdir -p /opt/flyingfish/sshserver/node_modules RUN mkdir -p /var/lib/flyingfish RUN mkdir -p /var/lib/flyingfish/ssh - -# Copy/Install Schemas ---------------------------------------------------------------------------------------------------- +# Copy Schemas --------------------------------------------------------------------------------------------------------- WORKDIR /opt/flyingfish/schemas - COPY ./schemas/ ./ RUN rm -R node_modules | true RUN rm -R dist | true RUN rm package-lock.json | true -RUN npm install -RUN npm run build - -# Copy/Install Core ---------------------------------------------------------------------------------------------------- +# Copy Core ------------------------------------------------------------------------------------------------------------ WORKDIR /opt/flyingfish/core - COPY ./core/ ./ RUN rm -R node_modules | true RUN rm -R dist | true RUN rm package-lock.json | true -RUN npm install -RUN npm run build - -# Copy/Install sshserver ----------------------------------------------------------------------------------------------- +# Copy sshserver ------------------------------------------------------------------------------------------------------- WORKDIR /opt/flyingfish/sshserver - COPY ./sshserver ./ RUN rm -R Dockerfile | true @@ -51,8 +41,23 @@ RUN rm -R node_modules | true RUN rm -R dist | true RUN rm package-lock.json | true +# Install -------------------------------------------------------------------------------------------------------------- + +WORKDIR /opt/flyingfish +COPY ./package.json ./ RUN npm install + +WORKDIR /opt/flyingfish/schemas +RUN npm run build + +WORKDIR /opt/flyingfish/core RUN npm run build + +WORKDIR /opt/flyingfish/sshserver +RUN npm run build + +# ---------------------------------------------------------------------------------------------------------------------- + RUN npm install supervisor -g EXPOSE 22