akaunting / docker

Docker Image for Akaunting
https://github.com/akaunting/akaunting
GNU General Public License v3.0
182 stars 86 forks source link

Default docker-compose installation http://10.101.3.1:4466/1/wizard returns Connection refused (livewire) #40

Closed mm86133 closed 2 years ago

mm86133 commented 3 years ago

Followed the

`git clone https://github.com/akaunting/docker cd docker cp env/db.env.example env/db.env vi env/db.env # and set things cp env/run.env.example env/run.env vi env/run.env # and set things

AKAUNTING_SETUP=true docker-compose up -d`

Just changed the APP_URL to local IP address (http), change company name, company email, admin email and admin pass.

After login in into initial login page, I am getting net::ERR_CONNECTION_REFUSED for http://10.101.3.1/public/vendor/livewire/livewire.js?id=d9e06c155e467adb5de2

dabruh commented 3 years ago

I'm experiencing a similar issue. I just pulled (the most recent commit) from the master branch and ran the following in Bash (after just adjusting the APP_URL):

git clone https://github.com/akaunting/docker
cd docker
cp env/db.env.example env/db.env
vi env/db.env # and set things
cp env/run.env.example env/run.env
vi env/run.env # and set things

AKAUNTING_SETUP=true docker-compose up -d

I let the setup finish and then run:

docker-compose down -v
docker-compose up -d

When I then try to log in, I see the following in the developer console: POST http://localhost:8080/auth/login [HTTP/1.1 500 Internal Server Error 157ms].

The following error shows up in the stdout of the akaunting container:

[2021-06-15 17:20:23] production.ERROR: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'akaunting.asd_users' doesn't exist
 (SQL: select * from `asd_users` where `email` = me@company.com and `asd_users`.`deleted_at` is null limit 1) {"exception":"[object]
(Illuminate\\Database\\QueryException(code: 42S02): SQLSTATE[42S02]: Base table or view not found: 1146 Table 'akaunting.asd_users' d
oesn't exist (SQL: select * from `asd_users` where `email` = me@company.com and `asd_users`.`deleted_at` is null limit 1) at /var/www
/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:692)
[stacktrace]
#0 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(652): Illuminate\\Database\\Connection->runQueryCall
back('select * from `...', Array, Object(Closure))
#1 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Connection.php(360): Illuminate\\Database\\Connection->run('select
* from `...', Array, Object(Closure))
#2 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(2361): Illuminate\\Database\\Connection->select('
select * from `...', Array, true)
#3 /var/www/html/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php(2349): Illuminate\\Database\\Query\\Builder->runS
elect()
# trimmed

Does the table not exist? Seems like so...:

>>> docker exec -it 797e32256aa3 mariadb -u admin -D akaunting -p                                      ±[master]
Enter password:
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 11
Server version: 10.5.10-MariaDB-1:10.5.10+maria~focal mariadb.org binary distribution

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [akaunting]> SHOW TABLES;
Empty set (0.001 sec)

MariaDB [akaunting]> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| akaunting          |
| information_schema |
+--------------------+
2 rows in set (0.001 sec)

MariaDB [akaunting]>

Here is the output of AKAUNTING_SETUP=true docker-compose up -d. I can't find anything that stands out.

Final notes: I strongly discourage from using the latest tags for images. It's far better to use specific tags as the installation can stop working at any time if one of the images (e.g. MariaDB) receives an update on the latest tag. I assume that's what has happened now. I also do not understand why the build of the akaunting Docker image was triggered when I ran AKAUNTING_SETUP=true docker-compose up -d. The image should already contain everything necessary for execution.

dabruh commented 3 years ago

Also, here are the images I'm using:

REPOSITORY              TAG          IMAGE ID       CREATED          SIZE
akaunting/akaunting     latest       dc9a72a0edb8   11 minutes ago   712MB
php                     7.4-apache   b4f3588abe64   11 days ago      414MB
mariadb                 latest       eff629089685   3 weeks ago      408MB
containrrr/watchtower   latest       dd78a816fb76   7 weeks ago      16.4MB

As you might figure, using the latest tag makes troubleshooting much harder. Additionally; even though it may come as a nice-to-have feature, I think that automatic updates (through watchtower) are dangerous and once again pose the same issues which are brought when using the latest tags. One never knows what an automatic update may bring, and I think stability is more important than the latest & greatest when it comes to financial software.

1ubuntuuser commented 3 years ago

Might be related to this issue #41

After runningAKAUNTING_SETUP=true docker-compose up -d try running docker-compose down without -v

dabruh commented 3 years ago

@1ubuntuuser indeed, I am able to log in after omitting the -v flag when running docker-compose down before bringing up the containers again.

MohammedAl-Mahdawi commented 2 years ago

Hi,

Thank you all for your contribution, I can see this issue is resolved!