diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 000000000..21fc085cb --- /dev/null +++ b/Dockerfile @@ -0,0 +1,15 @@ +FROM maven:3.8.5-openjdk-17 AS build + +WORKDIR /app + + +COPY pom.xml ./pom.xml +COPY src ./src +COPY resources ./resources + +RUN mvn clean package -Pprod + +EXPOSE 8080 + +ENTRYPOINT ["java", "-jar", "--spring.profiles.active=prod", "app/target/jira.jar"] + diff --git a/README.md b/README.md index 719b268f5..4ab29fffe 100644 --- a/README.md +++ b/README.md @@ -27,4 +27,13 @@ - https://habr.com/ru/articles/259055/ Список выполненных задач: -... \ No newline at end of file +- Удалить социальные сети +- Вынести чувствительную информацию в отдельный проперти файл +- Добавить testcontainers +- Написать тесты для всех публичных методов контроллера ProfileRestController +- Сделать рефакторинг метода com.javarush.jira.bugtracking.attachment.FileUtil#upload +- Добавить новый функционал: добавления тегов к задаче(без фронта) +- Добавить подсчет времени сколько задача находилась в работе и тестировании. +- Написать Dockerfile для основного сервера +- Написать docker-compose файл для запуска контейнера сервера вместе с БД и nginx +- Добавить локализацию минимум на двух языках(en,es,ru) для шаблонов писем (mails) и стартовой страницы index.html \ No newline at end of file diff --git a/config/nginx.conf b/config/nginx.conf index 82b9e234d..634d2c528 100644 --- a/config/nginx.conf +++ b/config/nginx.conf @@ -10,7 +10,7 @@ server { gzip_min_length 2048; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - root /opt/jirarush/resources; + root /resources; if ($request_uri ~ ';') {return 404;} diff --git a/dc-prop.env b/dc-prop.env new file mode 100644 index 000000000..b2a57682f --- /dev/null +++ b/dc-prop.env @@ -0,0 +1,4 @@ + +POSTGRES_DB_URL=jdbc:postgresql://db:5432/jira +POSTGRES_DB_USER=jira +POSTGRES_DB_PASSWORD=JiraRush diff --git a/docker-compose.yaml b/docker-compose.yaml new file mode 100644 index 000000000..631dc8ff8 --- /dev/null +++ b/docker-compose.yaml @@ -0,0 +1,40 @@ +version: '3.8' + +services: + app: + container_name: app_container + image: jira:latest + build: + context: . + dockerfile: Dockerfile + ports: + - "8080:8080" + env_file: + - dc-prop.env + depends_on: + - db + - nginx + restart: always + + + db: + container_name: db_container + image: postgres:latest + environment: + POSTGRES_USER: jira + POSTGRES_PASSWORD: JiraRush + ports: + - "5432:5432" + volumes: + - ./data/db:/var/lib/postgresql/data + restart: always + + + nginx: + container_name: nginx_container + image: nginx:latest + ports: + - "80:80" + volumes: + - ./config/nginx.conf:/etc/nginx/nginx.conf + restart: always \ No newline at end of file diff --git a/pom.xml b/pom.xml index f6c152c68..b0529bb0d 100644 --- a/pom.xml +++ b/pom.xml @@ -23,6 +23,18 @@ UTF-8 + + + + org.testcontainers + testcontainers-bom + 1.20.1 + pom + import + + + + org.springframework.boot @@ -97,6 +109,7 @@ org.projectlombok lombok true + 1.18.34 org.mapstruct @@ -142,6 +155,21 @@ junit-platform-launcher test + + org.testcontainers + postgresql + test + + + org.testcontainers + junit-jupiter + test + + + org.testcontainers + testcontainers + test + diff --git a/resources/mails/email-confirmation.html b/resources/mails/email-confirmation.html index 106e6129a..4993bf8c1 100644 --- a/resources/mails/email-confirmation.html +++ b/resources/mails/email-confirmation.html @@ -1,13 +1,13 @@ - + - JiraRush - подтверждение почты + JiraRush - подтверждение почты -

-

Чтобы завершить настройку учетной записи и начать пользоваться JiraRush, подтвердите, что вы правильно указали вашу +

+

Чтобы завершить настройку учетной записи и начать пользоваться JiraRush, подтвердите, что вы правильно указали вашу электронную почту.

-Подтвердить почту +Подтвердить почту \ No newline at end of file diff --git a/resources/mails/password-reset.html b/resources/mails/password-reset.html index b37a49007..36d4e26d8 100644 --- a/resources/mails/password-reset.html +++ b/resources/mails/password-reset.html @@ -1,12 +1,12 @@ - + - JiraRush - установить новый пароль + JiraRush - установить новый пароль -

-

-Установить пароль +

+

+Установить пароль \ No newline at end of file diff --git a/resources/view/index.html b/resources/view/index.html index e8656ef96..f1f41c11a 100644 --- a/resources/view/index.html +++ b/resources/view/index.html @@ -1,13 +1,23 @@ - + -

JiraRush Home page

+

JiraRush Home page

+
+
+ + +
+
- +
diff --git a/resources/view/layout/footer.html b/resources/view/layout/footer.html index abd5ae968..67c9aea78 100644 --- a/resources/view/layout/footer.html +++ b/resources/view/layout/footer.html @@ -1,5 +1,5 @@ - +
diff --git a/resources/view/layout/header.html b/resources/view/layout/header.html index 451f9652d..929bda86e 100644 --- a/resources/view/layout/header.html +++ b/resources/view/layout/header.html @@ -1,15 +1,16 @@ - +