From eb397cac7d0bb15fc92510cf7819b7a6926c0e49 Mon Sep 17 00:00:00 2001 From: MCAyd <ma04274@surrey.ac.uk> Date: Fri, 21 Apr 2023 00:39:38 +0100 Subject: [PATCH] docker is working properly, runsh file is added to the folder which runs all dockers consecutively --- frontend/.env | 2 +- frontend/application/__init__.py | 2 -- .../static/images/1984a21b73b88524.jpeg | Bin 0 -> 3602 bytes .../static/images/users/e6be63b80a5b9efe.jpeg | Bin 0 -> 3602 bytes frontend/requirements.txt | 2 +- post-service/.env | 2 +- post-service/Dockerfile | 2 +- post-service/application/__init__.py | 7 ++++++ .../application/post_api/api/UserClient.py | 9 ++++++-- post-service/config.py | 2 ++ run.sh | 21 ++++++++++++++++++ user-service/.env | 2 +- user-service/application/models.py | 2 +- user-service/application/user_api/routes.py | 1 - 14 files changed, 43 insertions(+), 11 deletions(-) create mode 100644 frontend/application/static/images/1984a21b73b88524.jpeg create mode 100644 frontend/application/static/images/users/e6be63b80a5b9efe.jpeg create mode 100644 run.sh diff --git a/frontend/.env b/frontend/.env index 10e8a83..30a348d 100644 --- a/frontend/.env +++ b/frontend/.env @@ -1 +1 @@ -CONFIGURATION_SETUP="config.DevelopmentConfig" +CONFIGURATION_SETUP="config.ProductionConfig" diff --git a/frontend/application/__init__.py b/frontend/application/__init__.py index 6285350..a84f862 100644 --- a/frontend/application/__init__.py +++ b/frontend/application/__init__.py @@ -6,7 +6,6 @@ from flask_login import LoginManager from flask_ckeditor import CKEditor login_manager = LoginManager() -UPLOAD_FOLDER = os.path.join('static', 'images') app = None def create_app(): @@ -17,7 +16,6 @@ def create_app(): return app app = Flask(__name__) - app.config['UPLOAD_FOLDER'] = UPLOAD_FOLDER # Load environment variables load_dotenv() diff --git a/frontend/application/static/images/1984a21b73b88524.jpeg b/frontend/application/static/images/1984a21b73b88524.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..be7f0ac7a09746d836ec73d0287de197af66c15c GIT binary patch literal 3602 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 literal 0 HcmV?d00001 diff --git a/frontend/application/static/images/users/e6be63b80a5b9efe.jpeg b/frontend/application/static/images/users/e6be63b80a5b9efe.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..be7f0ac7a09746d836ec73d0287de197af66c15c GIT binary patch literal 3602 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 literal 0 HcmV?d00001 diff --git a/frontend/requirements.txt b/frontend/requirements.txt index 72f368a..6b61adb 100644 --- a/frontend/requirements.txt +++ b/frontend/requirements.txt @@ -35,4 +35,4 @@ urllib3==1.26.15 visitor==0.1.3 Werkzeug==2.2.3 WTForms==3.0.1 - +Pillow==9.0.1 diff --git a/post-service/.env b/post-service/.env index 10e8a83..30a348d 100644 --- a/post-service/.env +++ b/post-service/.env @@ -1 +1 @@ -CONFIGURATION_SETUP="config.DevelopmentConfig" +CONFIGURATION_SETUP="config.ProductionConfig" diff --git a/post-service/Dockerfile b/post-service/Dockerfile index d5515d3..4b680f2 100644 --- a/post-service/Dockerfile +++ b/post-service/Dockerfile @@ -16,4 +16,4 @@ RUN pip3 install -r requirements.txt COPY . /post-service -CMD [ "./wait-for-it.sh", "user-db:3306", "--timeout=0" ,"--","python3", "run.py"] +CMD [ "./wait-for-it.sh", "post-db:3306", "--timeout=0" ,"--","python3", "run.py"] diff --git a/post-service/application/__init__.py b/post-service/application/__init__.py index 07d9c0c..b356beb 100644 --- a/post-service/application/__init__.py +++ b/post-service/application/__init__.py @@ -7,8 +7,15 @@ from flask_login import LoginManager from flask_sqlalchemy import SQLAlchemy db = SQLAlchemy() +app = None def create_app(): + + global app + + if app is not None: + return app + app = Flask(__name__) # Load environment variables diff --git a/post-service/application/post_api/api/UserClient.py b/post-service/application/post_api/api/UserClient.py index 18ed05d..0507cb6 100644 --- a/post-service/application/post_api/api/UserClient.py +++ b/post-service/application/post_api/api/UserClient.py @@ -1,10 +1,14 @@ # application/post_api/api/UserClient.py import requests +from application import app class UserClient: + + user_service = app.config['USER_SERVICE'] + @staticmethod def get_username(user_id): - url='http://localhost:5001/api/' + str(user_id) + '/username' + url='http://'+ UserClient.user_service +'/api/' + str(user_id) + '/username' response = requests.request(method="GET", url=url) response = response.json() @@ -19,7 +23,8 @@ class UserClient: headers = { 'Authorization': api_key } - response = requests.request(method="GET", url='http://localhost:5001/api/user', headers=headers) + url='http://'+ UserClient.user_service +'/api/user' + response = requests.request(method="GET", url=url, headers=headers) if response.status_code == 401: return False user = response.json() diff --git a/post-service/config.py b/post-service/config.py index 88575bf..1825bca 100644 --- a/post-service/config.py +++ b/post-service/config.py @@ -15,6 +15,7 @@ class Config: class DevelopmentConfig(Config): ENV = "development" DEBUG = True + USER_SERVICE = "localhost:5001" SQLALCHEMY_DATABASE_URI = 'sqlite:///posts-service.db' SQLALCHEMY_ECHO = True @@ -22,5 +23,6 @@ class DevelopmentConfig(Config): class ProductionConfig(Config): ENV = "production" DEBUG = True + USER_SERVICE = "user-service:5001" SQLALCHEMY_DATABASE_URI = 'mysql+pymysql://post-service:pass1234@post-db:3306/post' SQLALCHEMY_ECHO = False diff --git a/run.sh b/run.sh new file mode 100644 index 0000000..c55fb27 --- /dev/null +++ b/run.sh @@ -0,0 +1,21 @@ +#!/bin/bash + +sudo apt-get install dbus-x11 + +# user-service'i baÅŸlat +cd user-service +docker-compose build +gnome-terminal -- docker-compose up +cd .. + +# post-service'i baÅŸlat +cd post-service +docker-compose build +gnome-terminal -- docker-compose up +cd .. + +# frontend'i baÅŸlat +cd frontend +docker-compose build +gnome-terminal -- docker-compose up +cd .. \ No newline at end of file diff --git a/user-service/.env b/user-service/.env index 10e8a83..30a348d 100644 --- a/user-service/.env +++ b/user-service/.env @@ -1 +1 @@ -CONFIGURATION_SETUP="config.DevelopmentConfig" +CONFIGURATION_SETUP="config.ProductionConfig" diff --git a/user-service/application/models.py b/user-service/application/models.py index 2372270..42bf485 100644 --- a/user-service/application/models.py +++ b/user-service/application/models.py @@ -8,7 +8,7 @@ class User(db.Model, UserMixin): id = db.Column(db.Integer, primary_key=True) email = db.Column(db.String(255), unique=True, nullable=False) phone_number = db.Column(db.String(255), unique=False, nullable=True) - uni_number = db.Column(db.Integer, unique=False, nullable=True) + uni_number = db.Column(db.String(255), unique=False, nullable=True) user_role = db.Column(db.String(255), unique=False, nullable=False) first_name = db.Column(db.String(255), unique=False, nullable=False) last_name = db.Column(db.String(255), unique=False, nullable=False) diff --git a/user-service/application/user_api/routes.py b/user-service/application/user_api/routes.py index b9229df..acde432 100644 --- a/user-service/application/user_api/routes.py +++ b/user-service/application/user_api/routes.py @@ -53,7 +53,6 @@ def get_users(): response = jsonify(data) return response - @user_api_blueprint.route('/api/user/create', methods=['POST']) def post_register(): first_name = request.form['first_name'] -- GitLab