diff --git a/.env.example b/.env.example index 4abf6a3c..9db3008d 100644 --- a/.env.example +++ b/.env.example @@ -3,4 +3,6 @@ CLIENT_PATH=/Users/someuser/LEGO Universe # Can improve build time BUILD_THREADS=10 # Updates NET_VERSION in CMakeVariables.txt -BUILD_VERSION=171023 \ No newline at end of file +BUILD_VERSION=171023 +# make sure this is a long random string +ACCOUNT_MANAGER_SECRET= diff --git a/docker-compose.yml b/docker-compose.yml index 9377e772..288c3901 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -34,6 +34,44 @@ services: depends_on: - database + brickbuildfix: + container_name: DarkFlameBrickBuildFix + networks: + - darkflame + build: + context: . + dockerfile: ./docker/brickfix.Dockerfile + ports: + - 80:80 + healthcheck: + test: ["CMD", "curl", "-f", "http://localhost:80"] + interval: 2m + timeout: 3s + retries: 3 + start_period: 40s + + account-manager: + container_name: DarkFlameAccountManager + networks: + - darkflame + build: + context: . + dockerfile: ./docker/AccountManager.Dockerfile + environment: + - DATABASE=${MARIADB_DATABASE:-darkflame} + - DATABASE_HOST=database + - DATABASE_USER=${MARIADB_USER:-darkflame} + - DATABASE_PASSWORD=${MARIADB_PASSWORD:-darkflame} + - ACCOUNT_SECRET=${ACCOUNT_MANAGER_SECRET:?err} + ports: + - 5000:5000 + healthcheck: + test: ["CMD", "curl", "-f", "http://localhost:5000"] + interval: 2m + timeout: 3s + retries: 3 + start_period: 40s + networks: darkflame: diff --git a/docker/AccountManager.Dockerfile b/docker/AccountManager.Dockerfile new file mode 100644 index 00000000..ea5cd1d3 --- /dev/null +++ b/docker/AccountManager.Dockerfile @@ -0,0 +1,13 @@ +# syntax=docker/dockerfile:1 +FROM python:3.9.9-buster + +WORKDIR /usr/local/share/ +RUN git clone https://github.com/DarkflameUniverse/AccountManager + +WORKDIR AccountManager +ADD docker/credentials_example.py credentials.py +ADD docker/resources_example.py resources.py +RUN pip3 install -r requirements.txt + +EXPOSE 5000 +CMD python3 app.py diff --git a/docker/brickfix.Dockerfile b/docker/brickfix.Dockerfile new file mode 100644 index 00000000..20a9444a --- /dev/null +++ b/docker/brickfix.Dockerfile @@ -0,0 +1,5 @@ +# syntax=docker/dockerfile:1 +FROM python:3.9.9-slim +WORKDIR /empty_dir +EXPOSE 80 +CMD python -m http.server 80 diff --git a/docker/credentials_example.py b/docker/credentials_example.py new file mode 100644 index 00000000..2112fbed --- /dev/null +++ b/docker/credentials_example.py @@ -0,0 +1,4 @@ +import os + +DB_URL = f'mysql+pymysql://{os.environ["DATABASE_USER"]}:{os.environ["DATABASE_PASSWORD"]}@{os.environ["DATABASE_HOST"]}/{os.environ["DATABASE"]}' +SECRET_KEY = os.environ["ACCOUNT_SECRET"] diff --git a/docker/resources_example.py b/docker/resources_example.py new file mode 100644 index 00000000..652281f5 --- /dev/null +++ b/docker/resources_example.py @@ -0,0 +1,3 @@ +LOGO = 'logo/logo.png' +PRIVACY_POLICY = 'policy/Privacy Policy.pdf' +TERMS_OF_USE = 'policy/Terms of Use.pdf'