Update docker files to work with v2

Updated docker files to work with version 2, and added mongo container to compose file
This commit is contained in:
Allen Barr
2023-05-03 13:23:50 -05:00
parent e0a397af78
commit 7eda742e69
3 changed files with 49 additions and 27 deletions

View File

@@ -1,14 +1,27 @@
FROM ubuntu:latest FROM ubuntu:jammy
RUN apt-get update --quiet \
&& apt-get install --quiet --yes \ USER root
bsdtar \ RUN adduser --system mt
curl \
git RUN apt-get update
RUN ln --symbolic --force $(which bsdtar) $(which tar) RUN apt-get install --quiet --yes curl
RUN useradd --create-home --shell /bin/bash dicecloud RUN curl -fsSL https://deb.nodesource.com/setup_14.x | bash -
USER dicecloud RUN apt-get update
WORKDIR /home/dicecloud RUN apt-get install --quiet --yes nodejs git
RUN curl https://install.meteor.com/?release=1.8.0.2 | sh
ENV PATH="${PATH}:/home/dicecloud/.meteor" USER mt
COPY dev.sh ./dev.sh
ENTRYPOINT ./dev.sh RUN curl https://install.meteor.com/ | sh
WORKDIR /home/mt
RUN git clone https://github.com/ThaumRystra/DiceCloud dicecloud
WORKDIR /home/mt/dicecloud/app
RUN npm install --production
ENV PATH=$PATH:/home/mt/.meteor
RUN meteor build --directory ~/dc/ --architecture os.linux.x86_64
WORKDIR /home/mt/dc/bundle/programs/server
RUN npm install
WORKDIR /home/mt/dc/bundle
RUN rm -r /home/mt/dicecloud
ENTRYPOINT node main.js

4
dev.sh
View File

@@ -1,4 +0,0 @@
set -o errexit -o nounset
cd DiceCloud/app
meteor npm install
meteor

View File

@@ -1,13 +1,26 @@
version: "3.7" version: '3.7'
services: services:
web: dicecloud-db:
container_name: dicecloud-db
image: mongo:latest
command:
- --storageEngine=wiredTiger
volumes:
- ./dicecloud/data/db:/data/db
environment:
- MONGO_INITDB_ROOT_USERNAME=meteor
- MONGO_INITDB_ROOT_PASSWORD=meteor
dicecloud:
container_name: dicecloud
build: build:
context: ./ context: ./
volumes: environment:
- .:/home/dicecloud/DiceCloud #update ROOT_URL, PORT, and MAIL_URL for your environment
- ROOT_URL=http://localhost:3000
- MONGO_URL=mongodb://meteor:meteor@dicecloud-db:27017
- PORT=3000
- NODE_ENV=production
- METEOR_SETTINGS={"public":{"environment":"production","disablePatreon":true}}
- MAIL_URL=smtp://EMAIL:PASSWORD@SERVER:PORT
ports: ports:
- "3000:3000" - '3000:3000' #The internal port should match the port set in the environmental variables
- "3003:3003"
# entrypoint: /bin/bash
# stdin_open: true
# tty: true