Enalean / docker-tuleap-aio

A Docker container to build Tuleap
MIT License
52 stars 42 forks source link

Generated credentials do not work #9

Closed shaded-enmity closed 8 years ago

shaded-enmity commented 8 years ago

First problem is:

- Automatically generated passwords are stored in /root/.tuleap_passwd

This isn't true, the generated passwords are stored in /data/root/.tuleap_passwd

Second problem is that the credentials do not work, I'm trying to login via localhost/account/login.php and keep getting Invalid Password Or User Name.

The default credentials mentioned in http://doc-en.tuleap.net/en/latest/installation-guide/full-installation.html#first-connection (admin/siteadmin) do not work either.

OSSDeveloper commented 8 years ago

Having the same issue. Neither admin/siteadmin or the passwords in /srv/docker/pink/root/.tuleap_passwd are working. Hope to get a solution to the issue.

gwengullett commented 8 years ago

+1, also not working for me either

shaded-enmity commented 8 years ago

Temporary workaround:

$ docker exec -ti tuleap bash
$ mysql -u codendiadm --password=<generated>
mysql> use tuleap;
mysql> update user set user_pw=md5('abcd1234') where user_id=101;
vaceletm commented 8 years ago

Is there any errors visible at first run (with docker logs) ?

Moreover, what is the content of $sys_default_domain and $sys_https_host in /etc/tuleap/conf/local.inc ?

shaded-enmity commented 8 years ago

No errors, I suspect that the password field is filled with the generated password but it's user_pw which is checked during authentication.

The two variables both point to localhost.

vaceletm commented 8 years ago

I think I understood what's going on. Currently building some stuff locally

vaceletm commented 8 years ago

I think I fixed most issues, the message now indicate the right path for passwords and passwords are right seeded in the DB. Could you confirm with :latest (wait for build) ?

gwengullett commented 8 years ago

Still not working

Here is a gist with the docker output from latest : https://gist.github.com/eclipsenet/7953755a0f2ddd82bf4a

I also got some mail at root with the following error within the docker:

PHP Warning:  file_put_contents(/var/tmp/tuleap_cache/hooks.json): failed to open stream: Permission denied in /usr/share/tuleap/src/common/plugin/PluginManager.class.php on line 112

Warning: file_put_contents(/var/tmp/tuleap_cache/hooks.json): failed to open stream: Permission denied in /usr/share/tuleap/src/common/plugin/PluginManager.class.php on line 112

edit: I forgot to mention that I cannot even access the UI

vaceletm commented 8 years ago

@eclipsenet it seems that you just re-ran the container over existing data. As the problem originated at install time, existing installations cannot be fixed. Either you fix the DB as suggested above or you can re-create the data container.

For the second problem, this is a know issue at Tuleap side, there is a fix pending (https://tuleap.net/plugins/tracker/?aid=8726) or you can fix it by yourself with chown codendiadm:codendiadm -R /var/tmp/tuleap_cache

gwengullett commented 8 years ago

odd, I deleted the container and the images before running it. I'll dig further, thanks.

gwengullett commented 8 years ago

I see, I completely forgot about the volume that is getting mounted

shaded-enmity commented 8 years ago

@vaceletm

# docker volume create -n tuleap-data
flag provided but not defined: -n
See 'docker volume create --help'.

Seems that the -n form has been dropped in 1.10 (https://docs.docker.com/engine/reference/commandline/volume_create/)

Now I'm getting the following error:

++ set -e
+ start_mysql
+ echo 'Start mysql'
Start mysql
+ sleep 1
+ /usr/bin/pidproxy /var/run/mysqld/mysqld.pid /usr/bin/mysqld_safe
160315 15:50:58 mysqld_safe Logging to '/var/lib/mysql/51f2129ef4a9.err'.
chown: invalid user: `mysql'
160315 15:50:58 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
160315 15:50:58 mysqld_safe mysqld from pid file /var/lib/mysql/51f2129ef4a9.pid ended
++ egrep '^\$sys_dbpasswd' /etc/tuleap/conf/database.inc
++ sed -e 's/^\$sys_dbpasswd="\(.*\)";$/\1/'
egrep: /etc/tuleap/conf/database.inc: No such file or directory
+ mysql -ucodendiadm -p -e 'show databases'
Enter password: 
vaceletm commented 8 years ago

@shaded-enmity I reproduce your issue, I don't get why it worked for me once...

vaceletm commented 8 years ago

@shaded-enmity I made a "blind guess" with c89e352 as my current bandwidth doesn't allow me to build the image. The new build should be better (and maybe actually works!)

shaded-enmity commented 8 years ago

@vaceletm

Now, this message is looping:

Wait for the db
+ sleep 1
++ egrep '^\$sys_dbpasswd' /etc/tuleap/conf/database.inc
++ sed -e 's/^\$sys_dbpasswd="\(.*\)";$/\1/'
+ mysql -ucodendiadm -pC9iNIVFu5sJBiAW -e 'show databases'
ERROR 1045 (28000): Access denied for user 'codendiadm'@'localhost' (using password: YES)
vaceletm commented 8 years ago

Ok I'll have a look at it tomorrow when I'm back with a decent bandwidth

shaded-enmity commented 8 years ago

@vaceletm My bad, sorry, I misread your message and didn't build a new image, now everything works! :+1: :beer: