RocketC31 / budget

Get a grip on your finances.
https://trackmybudget.org
MIT License
2 stars 0 forks source link

Fix docker-compose app start #108

Closed Grakov closed 1 year ago

Grakov commented 1 year ago

Where were some problems, while starting Budget via docker-compose from master.

1) Composer dependencies require php 8.1, but docker image was built with php 8.0:

Installing dependencies from lock file (including require-dev)
Verifying lock file contents can be installed on current platform.
Your lock file does not contain a compatible set of packages. Please run composer update.

  Problem 1
    - symfony/console is locked to version v6.1.7 and an update of this package was not requested.
    - symfony/console v6.1.7 requires php >=8.1 -> your php version (8.0.28) does not satisfy that requirement.
  Problem 2
    - symfony/css-selector is locked to version v6.1.3 and an update of this package was not requested.
    - symfony/css-selector v6.1.3 requires php >=8.1 -> your php version (8.0.28) does not satisfy that requirement.
...

2) npm package chalk@5.0.1 requires node ^12.17.0 || ^14.13 || >=16.0.0, but container was built with node 15.*:

error chalk@5.0.1: The engine "node" is incompatible with this module. Expected version "^12.17.0 || ^14.13 || >=16.0.0". Got "15.14.0"

This caused next error:

[2023-05-01 14:28:02] production.ERROR: Mix manifest not found at: /var/www/public/mix-manifest.json (View: /var/www/resources/views/app.blade.php) {"exception":"[object] (Illuminate\\View\\ViewException(code: 0): Mix manifest not found at: /var/www/public/mix-manifest.json (View: /var/www/resources/views/app.blade.php) at /var/www/vendor/laravel/framework/src/Illuminate/Foundation/Mix.php:52)
[stacktrace]

3) Git was missing in a docker container:

yarn install v1.22.19
warning package-lock.json found. Your project contains lock files generated by tools other than Yarn. It is advised not to mix package managers in order to avoid resolution inconsistencies caused by unsynchronized lock files. To clear this warning, remove package-lock.json.
[1/4] Resolving packages...
[2/4] Fetching packages...
error Couldn't find the binary git

4) Where are no redis service in docker-compose.yml, however, app tried to use it:

[2023-05-01 14:41:04] production.ERROR: Connection refused [tcp://127.0.0.1:6379] {"userId":1,"exception":"[object] (Predis\\Connection\\ConnectionException(code: 111): Connection refused [tcp://127.0.0.1:6379] at /var/www/vendor/predis/predis/src/Connection/AbstractConnection.php:155)