Просмотр исходного кода

(feat): used docker architecture

oscar 1 год назад
Родитель
Сommit
c2470acdfd
99 измененных файлов: 395 добавлений и 260 удалений
  1. 2
    15
      .gitignore
  2. 7
    0
      Makefile
  3. 53
    0
      docker-compose.yml
  4. 18
    0
      dockerfiles/php74
  5. 1
    0
      mysql/.gitignore
  6. 28
    0
      nginx/default.conf
  7. 0
    0
      src/be/.editorconfig
  8. 0
    0
      src/be/.env.example
  9. 0
    0
      src/be/.gitattributes
  10. 15
    0
      src/be/.gitignore
  11. 0
    0
      src/be/.styleci.yml
  12. 0
    0
      src/be/README.md
  13. 0
    0
      src/be/app/Console/Kernel.php
  14. 0
    0
      src/be/app/Exceptions/Handler.php
  15. 0
    0
      src/be/app/Http/Controllers/Controller.php
  16. 0
    0
      src/be/app/Http/Controllers/HealthyPassPortController.php
  17. 0
    0
      src/be/app/Http/Kernel.php
  18. 0
    0
      src/be/app/Http/Middleware/Authenticate.php
  19. 0
    0
      src/be/app/Http/Middleware/EncryptCookies.php
  20. 0
    0
      src/be/app/Http/Middleware/PreventRequestsDuringMaintenance.php
  21. 0
    0
      src/be/app/Http/Middleware/RedirectIfAuthenticated.php
  22. 0
    0
      src/be/app/Http/Middleware/TrimStrings.php
  23. 0
    0
      src/be/app/Http/Middleware/TrustHosts.php
  24. 0
    0
      src/be/app/Http/Middleware/TrustProxies.php
  25. 0
    0
      src/be/app/Http/Middleware/VerifyCsrfToken.php
  26. 0
    0
      src/be/app/Models/Survey.php
  27. 0
    0
      src/be/app/Models/SurveyHaveTag.php
  28. 0
    0
      src/be/app/Models/Tag.php
  29. 0
    0
      src/be/app/Models/User.php
  30. 0
    0
      src/be/app/Providers/AppServiceProvider.php
  31. 0
    0
      src/be/app/Providers/AuthServiceProvider.php
  32. 0
    0
      src/be/app/Providers/BroadcastServiceProvider.php
  33. 0
    0
      src/be/app/Providers/EventServiceProvider.php
  34. 0
    0
      src/be/app/Providers/RouteServiceProvider.php
  35. 0
    0
      src/be/artisan
  36. 0
    0
      src/be/bootstrap/app.php
  37. 0
    0
      src/be/bootstrap/cache/.gitignore
  38. 0
    0
      src/be/composer.json
  39. 270
    245
      src/be/composer.lock
  40. 0
    0
      src/be/config/app.php
  41. 0
    0
      src/be/config/auth.php
  42. 0
    0
      src/be/config/botApi.php
  43. 0
    0
      src/be/config/broadcasting.php
  44. 0
    0
      src/be/config/cache.php
  45. 0
    0
      src/be/config/cors.php
  46. 0
    0
      src/be/config/database.php
  47. 0
    0
      src/be/config/filesystems.php
  48. 0
    0
      src/be/config/hashing.php
  49. 0
    0
      src/be/config/logging.php
  50. 0
    0
      src/be/config/mail.php
  51. 0
    0
      src/be/config/queue.php
  52. 0
    0
      src/be/config/sanctum.php
  53. 0
    0
      src/be/config/services.php
  54. 0
    0
      src/be/config/session.php
  55. 0
    0
      src/be/config/view.php
  56. 0
    0
      src/be/database/.gitignore
  57. 0
    0
      src/be/database/factories/UserFactory.php
  58. 0
    0
      src/be/database/migrations/2014_10_12_000000_create_users_table.php
  59. 0
    0
      src/be/database/migrations/2014_10_12_100000_create_password_resets_table.php
  60. 0
    0
      src/be/database/migrations/2019_08_19_000000_create_failed_jobs_table.php
  61. 0
    0
      src/be/database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php
  62. 0
    0
      src/be/database/migrations/2023_09_27_035029_create_survey_have_tags_table.php
  63. 0
    0
      src/be/database/migrations/2023_09_27_035029_create_surveys_table.php
  64. 0
    0
      src/be/database/migrations/2023_09_27_035205_create_tags_table.php
  65. 0
    0
      src/be/database/seeders/DatabaseSeeder.php
  66. 0
    0
      src/be/package.json
  67. 0
    0
      src/be/phpunit.xml
  68. 0
    0
      src/be/public/.htaccess
  69. 0
    0
      src/be/public/favicon.ico
  70. 0
    0
      src/be/public/index.php
  71. 0
    0
      src/be/public/robots.txt
  72. 0
    0
      src/be/resources/css/app.css
  73. 0
    0
      src/be/resources/js/app.js
  74. 0
    0
      src/be/resources/js/bootstrap.js
  75. 0
    0
      src/be/resources/lang/en/auth.php
  76. 0
    0
      src/be/resources/lang/en/pagination.php
  77. 0
    0
      src/be/resources/lang/en/passwords.php
  78. 0
    0
      src/be/resources/lang/en/validation.php
  79. 0
    0
      src/be/resources/views/welcome.blade.php
  80. 0
    0
      src/be/routes/api.php
  81. 0
    0
      src/be/routes/channels.php
  82. 0
    0
      src/be/routes/console.php
  83. 0
    0
      src/be/routes/web.php
  84. 0
    0
      src/be/server.php
  85. 0
    0
      src/be/storage/app/.gitignore
  86. 0
    0
      src/be/storage/app/public/.gitignore
  87. 0
    0
      src/be/storage/framework/.gitignore
  88. 0
    0
      src/be/storage/framework/cache/.gitignore
  89. 0
    0
      src/be/storage/framework/cache/data/.gitignore
  90. 0
    0
      src/be/storage/framework/sessions/.gitignore
  91. 0
    0
      src/be/storage/framework/testing/.gitignore
  92. 0
    0
      src/be/storage/framework/views/.gitignore
  93. 0
    0
      src/be/storage/logs/.gitignore
  94. 0
    0
      src/be/tests/CreatesApplication.php
  95. 0
    0
      src/be/tests/Feature/ExampleTest.php
  96. 0
    0
      src/be/tests/TestCase.php
  97. 0
    0
      src/be/tests/Unit/ExampleTest.php
  98. 0
    0
      src/be/webpack.mix.js
  99. 1
    0
      src/fe/index.html

+ 2
- 15
.gitignore Просмотреть файл

@@ -1,15 +1,2 @@
1
-/node_modules
2
-/public/hot
3
-/public/storage
4
-/storage/*.key
5
-/vendor
6
-.env
7
-.env.backup
8
-.phpunit.result.cache
9
-docker-compose.override.yml
10
-Homestead.json
11
-Homestead.yaml
12
-npm-debug.log
13
-yarn-error.log
14
-/.idea
15
-/.vscode
1
+.DS_Store
2
+.idea

+ 7
- 0
Makefile Просмотреть файл

@@ -0,0 +1,7 @@
1
+.PHONY: up down
2
+
3
+up:
4
+	docker-compose up -d
5
+
6
+down:
7
+	docker-compose down -v

+ 53
- 0
docker-compose.yml Просмотреть файл

@@ -0,0 +1,53 @@
1
+version: '3.2'
2
+
3
+networks:
4
+  subnet:
5
+
6
+services:
7
+
8
+  nginx:
9
+    image: nginx:stable-alpine
10
+    container_name: nginx_moderna
11
+    ports:
12
+      - "80:80"
13
+    volumes:
14
+      - ./src/fe:/var/www/fe:ro,cached
15
+      - ./src/be:/var/www/html:ro,cached
16
+      - ./nginx/default.conf:/etc/nginx/conf.d/default.conf
17
+    depends_on:
18
+      - php
19
+    networks:
20
+      - subnet
21
+
22
+  mysql:
23
+    image: mysql:5.7
24
+    command: --default-authentication-plugin=mysql_native_password
25
+    container_name: mysql_moderna
26
+    platform: linux/amd64
27
+    tty: true
28
+    ports:
29
+      - "4306:3306"
30
+    environment:
31
+      MYSQL_DATABASE: homestead
32
+      MYSQL_USER: homestead
33
+      MYSQL_PASSWORD: secret
34
+      MYSQL_ROOT_PASSWORD: secret
35
+      SERVICE_TAGS: dev
36
+      SERVICE_NAME: mysql
37
+    volumes:
38
+      - ./mysql/data:/var/lib/mysql
39
+      - ./mysql/logs:/var/log/mysql
40
+      - ./mysql/my.cnf:/etc/mysql/conf.d/my.cnf
41
+    networks:
42
+      - subnet
43
+
44
+  php:
45
+    build:
46
+      context: .
47
+      dockerfile: ./dockerfiles/php74
48
+    container_name: php_moderna
49
+    volumes:
50
+      - ./src/be:/var/www/html:cached
51
+      - ./settings/upload.ini:/usr/local/etc/php/conf.d/docker-php-ext-upload.ini
52
+    networks:
53
+      - subnet

+ 18
- 0
dockerfiles/php74 Просмотреть файл

@@ -0,0 +1,18 @@
1
+FROM php:7.4-fpm
2
+
3
+WORKDIR /var/www/html
4
+
5
+RUN apt-get update
6
+RUN apt-get install -y libmcrypt-dev curl
7
+RUN apt-get install -y build-essential
8
+RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
9
+
10
+RUN apt install zip unzip
11
+RUN pecl install mcrypt
12
+RUN apt-get install -y \
13
+        libzip-dev \
14
+        zip \
15
+  && docker-php-ext-install zip
16
+RUN docker-php-ext-install pdo pdo_mysql
17
+RUN docker-php-ext-enable pdo pdo_mysql mcrypt
18
+RUN docker-php-ext-install opcache

+ 1
- 0
mysql/.gitignore Просмотреть файл

@@ -0,0 +1 @@
1
+*

+ 28
- 0
nginx/default.conf Просмотреть файл

@@ -0,0 +1,28 @@
1
+server {
2
+    listen 80;
3
+
4
+    location / {
5
+        index index.html;
6
+        root /var/www/fe;
7
+        try_files $uri $uri/ /index.html;
8
+    }
9
+
10
+    location /api {
11
+        index index.html index.php;
12
+        root /var/www/be;
13
+        try_files $uri $uri/ index.html /index.php?$query_string;
14
+    }
15
+
16
+    location ~ \.php$ {
17
+        root /var/www/html/public;
18
+        try_files $uri =404;
19
+        fastcgi_split_path_info ^(.+\.php)(/.+)$;
20
+        fastcgi_pass php_moderna:9000;
21
+        fastcgi_index index.php;
22
+        include fastcgi_params;
23
+        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
24
+        fastcgi_param PATH_INFO $fastcgi_path_info;
25
+    }
26
+
27
+    client_max_body_size 64M;
28
+}

.editorconfig → src/be/.editorconfig Просмотреть файл


.env.example → src/be/.env.example Просмотреть файл


.gitattributes → src/be/.gitattributes Просмотреть файл


+ 15
- 0
src/be/.gitignore Просмотреть файл

@@ -0,0 +1,15 @@
1
+/node_modules
2
+/public/hot
3
+/public/storage
4
+/storage/*.key
5
+/vendor
6
+.env
7
+.env.backup
8
+.phpunit.result.cache
9
+docker-compose.override.yml
10
+Homestead.json
11
+Homestead.yaml
12
+npm-debug.log
13
+yarn-error.log
14
+/.idea
15
+/.vscode

.styleci.yml → src/be/.styleci.yml Просмотреть файл


README.md → src/be/README.md Просмотреть файл


app/Console/Kernel.php → src/be/app/Console/Kernel.php Просмотреть файл


app/Exceptions/Handler.php → src/be/app/Exceptions/Handler.php Просмотреть файл


app/Http/Controllers/Controller.php → src/be/app/Http/Controllers/Controller.php Просмотреть файл


app/Http/Controllers/HealthyPassPortController.php → src/be/app/Http/Controllers/HealthyPassPortController.php Просмотреть файл


app/Http/Kernel.php → src/be/app/Http/Kernel.php Просмотреть файл


app/Http/Middleware/Authenticate.php → src/be/app/Http/Middleware/Authenticate.php Просмотреть файл


app/Http/Middleware/EncryptCookies.php → src/be/app/Http/Middleware/EncryptCookies.php Просмотреть файл


app/Http/Middleware/PreventRequestsDuringMaintenance.php → src/be/app/Http/Middleware/PreventRequestsDuringMaintenance.php Просмотреть файл


app/Http/Middleware/RedirectIfAuthenticated.php → src/be/app/Http/Middleware/RedirectIfAuthenticated.php Просмотреть файл


app/Http/Middleware/TrimStrings.php → src/be/app/Http/Middleware/TrimStrings.php Просмотреть файл


app/Http/Middleware/TrustHosts.php → src/be/app/Http/Middleware/TrustHosts.php Просмотреть файл


app/Http/Middleware/TrustProxies.php → src/be/app/Http/Middleware/TrustProxies.php Просмотреть файл


app/Http/Middleware/VerifyCsrfToken.php → src/be/app/Http/Middleware/VerifyCsrfToken.php Просмотреть файл


app/Models/Survey.php → src/be/app/Models/Survey.php Просмотреть файл


app/Models/SurveyHaveTag.php → src/be/app/Models/SurveyHaveTag.php Просмотреть файл


app/Models/Tag.php → src/be/app/Models/Tag.php Просмотреть файл


app/Models/User.php → src/be/app/Models/User.php Просмотреть файл


app/Providers/AppServiceProvider.php → src/be/app/Providers/AppServiceProvider.php Просмотреть файл


app/Providers/AuthServiceProvider.php → src/be/app/Providers/AuthServiceProvider.php Просмотреть файл


app/Providers/BroadcastServiceProvider.php → src/be/app/Providers/BroadcastServiceProvider.php Просмотреть файл


app/Providers/EventServiceProvider.php → src/be/app/Providers/EventServiceProvider.php Просмотреть файл


app/Providers/RouteServiceProvider.php → src/be/app/Providers/RouteServiceProvider.php Просмотреть файл


artisan → src/be/artisan Просмотреть файл


bootstrap/app.php → src/be/bootstrap/app.php Просмотреть файл


storage/logs/.gitignore → src/be/bootstrap/cache/.gitignore Просмотреть файл


composer.json → src/be/composer.json Просмотреть файл


src/be/composer.lock
Разница между файлами не показана из-за своего большого размера
Просмотреть файл


config/app.php → src/be/config/app.php Просмотреть файл


config/auth.php → src/be/config/auth.php Просмотреть файл


config/botApi.php → src/be/config/botApi.php Просмотреть файл


config/broadcasting.php → src/be/config/broadcasting.php Просмотреть файл


config/cache.php → src/be/config/cache.php Просмотреть файл


config/cors.php → src/be/config/cors.php Просмотреть файл


config/database.php → src/be/config/database.php Просмотреть файл


config/filesystems.php → src/be/config/filesystems.php Просмотреть файл


config/hashing.php → src/be/config/hashing.php Просмотреть файл


config/logging.php → src/be/config/logging.php Просмотреть файл


config/mail.php → src/be/config/mail.php Просмотреть файл


config/queue.php → src/be/config/queue.php Просмотреть файл


config/sanctum.php → src/be/config/sanctum.php Просмотреть файл


config/services.php → src/be/config/services.php Просмотреть файл


config/session.php → src/be/config/session.php Просмотреть файл


config/view.php → src/be/config/view.php Просмотреть файл


database/.gitignore → src/be/database/.gitignore Просмотреть файл


database/factories/UserFactory.php → src/be/database/factories/UserFactory.php Просмотреть файл


database/migrations/2014_10_12_000000_create_users_table.php → src/be/database/migrations/2014_10_12_000000_create_users_table.php Просмотреть файл


database/migrations/2014_10_12_100000_create_password_resets_table.php → src/be/database/migrations/2014_10_12_100000_create_password_resets_table.php Просмотреть файл


database/migrations/2019_08_19_000000_create_failed_jobs_table.php → src/be/database/migrations/2019_08_19_000000_create_failed_jobs_table.php Просмотреть файл


database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php → src/be/database/migrations/2019_12_14_000001_create_personal_access_tokens_table.php Просмотреть файл


database/migrations/2023_09_27_035029_create_survey_have_tags_table.php → src/be/database/migrations/2023_09_27_035029_create_survey_have_tags_table.php Просмотреть файл


database/migrations/2023_09_27_035029_create_surveys_table.php → src/be/database/migrations/2023_09_27_035029_create_surveys_table.php Просмотреть файл


database/migrations/2023_09_27_035205_create_tags_table.php → src/be/database/migrations/2023_09_27_035205_create_tags_table.php Просмотреть файл


database/seeders/DatabaseSeeder.php → src/be/database/seeders/DatabaseSeeder.php Просмотреть файл


package.json → src/be/package.json Просмотреть файл


phpunit.xml → src/be/phpunit.xml Просмотреть файл


public/.htaccess → src/be/public/.htaccess Просмотреть файл


public/favicon.ico → src/be/public/favicon.ico Просмотреть файл


public/index.php → src/be/public/index.php Просмотреть файл


public/robots.txt → src/be/public/robots.txt Просмотреть файл


resources/css/app.css → src/be/resources/css/app.css Просмотреть файл


resources/js/app.js → src/be/resources/js/app.js Просмотреть файл


resources/js/bootstrap.js → src/be/resources/js/bootstrap.js Просмотреть файл


resources/lang/en/auth.php → src/be/resources/lang/en/auth.php Просмотреть файл


resources/lang/en/pagination.php → src/be/resources/lang/en/pagination.php Просмотреть файл


resources/lang/en/passwords.php → src/be/resources/lang/en/passwords.php Просмотреть файл


resources/lang/en/validation.php → src/be/resources/lang/en/validation.php Просмотреть файл


resources/views/welcome.blade.php → src/be/resources/views/welcome.blade.php Просмотреть файл


routes/api.php → src/be/routes/api.php Просмотреть файл


routes/channels.php → src/be/routes/channels.php Просмотреть файл


routes/console.php → src/be/routes/console.php Просмотреть файл


routes/web.php → src/be/routes/web.php Просмотреть файл


server.php → src/be/server.php Просмотреть файл


storage/app/.gitignore → src/be/storage/app/.gitignore Просмотреть файл


storage/framework/views/.gitignore → src/be/storage/app/public/.gitignore Просмотреть файл


storage/framework/.gitignore → src/be/storage/framework/.gitignore Просмотреть файл


storage/framework/cache/.gitignore → src/be/storage/framework/cache/.gitignore Просмотреть файл


storage/framework/testing/.gitignore → src/be/storage/framework/cache/data/.gitignore Просмотреть файл


storage/framework/sessions/.gitignore → src/be/storage/framework/sessions/.gitignore Просмотреть файл


storage/framework/cache/data/.gitignore → src/be/storage/framework/testing/.gitignore Просмотреть файл


storage/app/public/.gitignore → src/be/storage/framework/views/.gitignore Просмотреть файл


bootstrap/cache/.gitignore → src/be/storage/logs/.gitignore Просмотреть файл


tests/CreatesApplication.php → src/be/tests/CreatesApplication.php Просмотреть файл


tests/Feature/ExampleTest.php → src/be/tests/Feature/ExampleTest.php Просмотреть файл


tests/TestCase.php → src/be/tests/TestCase.php Просмотреть файл


tests/Unit/ExampleTest.php → src/be/tests/Unit/ExampleTest.php Просмотреть файл


webpack.mix.js → src/be/webpack.mix.js Просмотреть файл


+ 1
- 0
src/fe/index.html Просмотреть файл

@@ -0,0 +1 @@
1
+test