Thanks! I will try to do a blog post a month to complement the forum.

- The root password for the MySQL container is set using a separate 
variable called MYSQL_ROOT_PASSWORD. It should not be needed since the 
container created the database, user, and grants all the permissions. 
- I don't know that the 'mysql.gtid_executed' table is or does. Some 
containers spin up but are still not ready to be used. I add a 5 or 10 
second sleep after services containers. This is not needed using Docker 
Compose since you can specify dependencies using the health check system. 

An automatic admin with a random password should have been created. I gave 
it a try and it works well for me, but yours is the second report of this 
issue I've seen so there is something being skipped during initialization. 
I will write a test for the container and find out.

In the meantime you can do:

docker exec -ti mayan-edms /bin/bash

to get inside the mayan container and the do:

mayan-edms.py changepassword admin

to set a new password until I get to the bottom of the autoadmin issue.




On Thursday, July 27, 2017 at 1:46:47 PM UTC-4, Mark Phillips wrote:
>
> Thanks!!!!!! A great write-up!!! As I was reading through the docker 
> manual I was beginning to suspect that something was missing, but I found a 
> partial mysq installation in the container (accessing it through the 
> shell). But it was only a partial installation, so I tried to repair as was 
> going to modify the settings.py to use mysql, but then your blog post 
> arrived.
>
> A couple of warnings from the mysql installation:
> * The root password for mysql was not set
> * Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot 
> be opened.
>
> root@orca:/home/mark/mayan2-docker# docker run -d --name mayan-mysql 
> --restart=always --env-file env.list -v mayan_mysql:/var/lib/mysql 
> --net=mayan mysql:latest
> Unable to find image 'mysql:latest' locally
> latest: Pulling from library/mysql
> ad74af05f5a2: Pull complete 
> 0639788facc8: Pull complete 
> de70fa77eb2b: Pull complete 
> 724179e94999: Pull complete 
> 50c77fb16ba6: Pull complete 
> d51f459239fb: Pull complete 
> 937bbdd4305a: Pull complete 
> 35369f9634e1: Pull complete 
> f6016aab25f1: Pull complete 
> 5f1901e920da: Pull complete 
> fdf808213c5b: Pull complete 
> Digest: 
> sha256:96edf37370df96d2a4ee1715cc5c7820a0ec6286551a927981ed50f0273d9b43
> Status: Downloaded newer image for mysql:latest
> 537501f942aad43f956343327ac3853021b62d44b044b92dbc3206e6db229156
> root@orca:/home/mark/mayan2-docker# docker logs mayan-mysql
> Initializing database
> 2017-07-27T15:13:35.448969Z 0 [Warning] TIMESTAMP with implicit DEFAULT 
> value is deprecated. Please use --explicit_defaults_for_timestamp server 
> option (see documentation for more details).
> 2017-07-27T15:13:36.931315Z 0 [Warning] InnoDB: New log files created, 
> LSN=45790
> 2017-07-27T15:13:37.257390Z 0 [Warning] InnoDB: Creating foreign key 
> constraint system tables.
> 2017-07-27T15:13:37.366858Z 0 [Warning] No existing UUID has been found, 
> so we assume that this is the first time that this server has been started. 
> Generating a new UUID: 2a28206b-72de-11e7-ad79-0242ac120002.
> 2017-07-27T15:13:37.399268Z 0 [Warning] Gtid table is not ready to be 
> used. Table 'mysql.gtid_executed' cannot be opened.
> 2017-07-27T15:13:37.399779Z 1 [Warning] root@localhost is created with an 
> empty password ! Please consider switching off the --initialize-insecure 
> option.
>
> The mayan installation went well - no errors.
> root@orca:/home/mark/mayan2-docker# docker run -d --name mayan-edms 
> --restart=always --env-file env.list -v mayan_data:/var/lib/mayan 
> --net=mayan -p 9005:80 mayanedms/mayanedms:2.6.4-3
> Unable to find image 'mayanedms/mayanedms:2.6.4-3' locally
> 2.6.4-3: Pulling from mayanedms/mayanedms
> e0a742c2abfd: Pull complete 
> 486cb8339a27: Pull complete 
> dc6f0d824617: Pull complete 
> 4f7a5649a30e: Pull complete 
> 672363445ad2: Pull complete 
> efb1cec07b5e: Pull complete 
> a801f5e9adaa: Pull complete 
> 8eb23d7c826c: Pull complete 
> 92fbf659e773: Pull complete 
> c0f0219c11c6: Pull complete 
> e77aab94a7a9: Pull complete 
> 4741b155d5ce: Pull complete 
> cdf3d5b0c8fe: Pull complete 
> cf2f940f4cc5: Pull complete 
> a22f7b8219aa: Pull complete 
> b06c1d87e40c: Pull complete 
> ba3f50217ec1: Pull complete 
> 427849b0be68: Pull complete 
> 4284e8fc0cb3: Pull complete 
> 99227ced2705: Pull complete 
> 60a3086c3d00: Pull complete 
> 5ce3b814e326: Pull complete 
> 7f69be0f8504: Pull complete 
> d43efc48a70f: Pull complete 
> 6b060a72026e: Pull complete 
> c42c5eba1b9b: Pull complete 
> f195e5af15a9: Pull complete 
> 2b37d227a29d: Pull complete 
> 5113bad4a09d: Pull complete 
> 2ec6a0237cc8: Pull complete 
> 9fd5f74e7daf: Pull complete 
> 68b2e131502b: Pull complete 
> 5f64c354aef1: Pull complete 
> 7a1d9773d33e: Pull complete 
> bc702ec47793: Pull complete 
> Digest: 
> sha256:de00429beb8736db87ad41ad1645787e5330beae11aed1479323a79ef40d1231
> Status: Downloaded newer image for mayanedms/mayanedms:2.6.4-3
> 51cbdb670142c55aa764b4bf018ce9377e6d4a26229bcf60e04ba2c29bf7a376
>
> Except I don't know the internally generated mayan admin password. The 
> login screen did not present the admin password at the first login, so I 
> have no way to login to the mayan installation. The forgot password email 
> link does not work because there is no email set up for the docker 
> container. How do I get the password for the mayan admin login?
>
> Thanks!
>
> Mark
>
> On Wed, Jul 26, 2017 at 11:14 PM, Roberto Rosario 
> <[email protected]> wrote:
>
>> Made a blog post with the full set of steps to use a MySQL container with 
>> the Mayan container: 
>> http://www.mayan-edms.org/post/deploy-mayan-docker-mysql/
>>
>> In summary you are configuring the Mayan container but are not launching 
>> a separate MySQL container.
>>
>> I tried to explain as much as possible in the post starting with some 
>> Docker basics. Hope you enjoy it and helps you.
>>
>> On Wednesday, July 26, 2017 at 11:51:24 AM UTC-4, Mark Phillips wrote:
>>
>>> Regarding environment variables, I tried to install mayan 2.6.1 two 
>>> ways, and cannot get it to work. I am trying to use docker to create mayan 
>>> 2.6.1 with mysql as per the instructions - 
>>> https://gitlab.com/mayan-edms/mayan-edms-docker/tree/2.6.1.
>>>
>>> 1. I created a root shell (Ubuntu 14.01) and created the following shell 
>>> environment variables using the following script - 
>>>
>>> #!/bin/sh
>>> MAYAN_DATABASE_DRIVER=\'django.db.backends.mysql\'
>>> MAYAN_DATABASE_NAME=\'memorabilia\'
>>> MAYAN_DATABASE_USER=\'mayan\'
>>> MAYAN_DATABASE_PASSWORD=\'ooTh7ietieT0aKea\'
>>> MAYAN_DATABASE_HOST=\'localhost\'
>>> MAYAN_DATABASE_PORT=\'3306\'
>>> export MAYAN_DATABASE_DRIVER
>>> export MAYAN_DATABASE_NAME
>>> export MAYAN_DATABASE_USER
>>> export MAYAN_DATABASE_PASSWORD
>>> export MAYAN_DATABASE_HOST
>>> export MAYAN_DATABASE_PORT
>>> echo $MAYAN_DATABASE_DRIVER
>>> echo $MAYAN_DATABASE_NAME
>>> echo $MAYAN_DATABASE_USER
>>> echo $MAYAN_DATABASE_PASSWORD
>>> echo $MAYAN_DATABASE_HOST
>>> echo $MAYAN_DATABASE_PORT
>>>
>>> The mayan instructions seem to indicate that the shell environment 
>>> variables need to single quotes around them. Is this correct, or are then 
>>> unquoted values? It the single quotes are not needed, I did not get an 
>>> error message about this.
>>>
>>> I then followed the instruction referenced above to pull mayan 2.6.1 and 
>>> then run mayan 2.6.1. I was able to access mayan from http://localhost, 
>>> but after looking into the settings.py file for this container, I found 
>>> that it was using sqlite and not mysql as the db backend.
>>>
>>> 2. I removed the above container and image and started again. I pulled 
>>> mayan 2.6.1, and created an env.list file as shown in the docker 
>>> instructions for passing environemnt variables to docker:
>>>
>>> MAYAN_DATABASE_DRIVER=django.db.backends.mysql
>>> MAYAN_DATABASE_NAME=memorabilia
>>> MAYAN_DATABASE_USER=mayan
>>> MAYAN_DATABASE_PASSWORD=ooTh7ietieT0aKea
>>> MAYAN_DATABASE_HOST=localhost
>>> MAYAN_DATABASE_PORT=3306
>>>
>>> I then ran mayan 2.6.1 with this command, passing the environment 
>>> variables as shown in the docker user guide
>>>
>>> docker run -d --name mayan-edms --restart=always -p 9005:80 --env-file 
>>> ./env.list -v mayan_data:/var/lib/mayan mayanedms/mayanedms:2.6.1
>>>
>>> The container never started, or more specifically, it would start and 
>>> stop continuously. I removed the container and image as it was broken.
>>>
>>> How do I create a mayan 2.6.1 instance using docker and using mysql as 
>>> the backend database? It does not appear the environment variables are 
>>> working Or I don't understand how to use them!), although the terminology 
>>> is rather confusing. Are they docker environment variables (as in #2 
>>> above), or environment variables from the shell where docker is run (as in 
>>> #1 above)?
>>>
>>> Thanks!
>>>
>>> Mark
>>>
>>> On Mon, Jul 24, 2017 at 8:27 PM, Roberto Rosario <roberto.rosa....z@
>>> gmail.com> wrote:
>>>
>>>> Yes, it is a less involved process and all dependencies are taken care 
>>>> of.
>>>>
>>>> 1. Correct, there is no need to use Python's virtualenv since the 
>>>> Docker container itself is already isolated from the OS.
>>>> 2. Environment variables are only needed when the container is first 
>>>> created, afterwards it can be stopped and restarted and their values will 
>>>> persist internally in the container. 
>>>>
>>>> On Wednesday, July 19, 2017 at 1:31:26 PM UTC-4, Mark Phillips wrote:
>>>>>
>>>>> I read the Docker install instructions for Mayan 2.6. Seems easy, but 
>>>>> I have a couple of questions - 
>>>>>
>>>>> 1. After reading some about Docker, as I understand it, we don't need 
>>>>> to create a virtualenv for the Docker image. Is that correct? If not, I 
>>>>> am 
>>>>> not sure how to combine the docker image with a virtualenv.
>>>>>
>>>>> 2. I see the environment variables make it easier to install with a 
>>>>> non-SQLite backend. Are these environment variables only for the install 
>>>>> process, or do then need to be a permanent feature? In other words, do I 
>>>>> set the environment variables in the current shell, or do they need to go 
>>>>> in my .profile so every time I log in they are present?
>>>>>
>>>>> Thanks!
>>>>>
>>>>>  Mark
>>>>>
>>>> -- 
>>>>
>>>> --- 
>>>> You received this message because you are subscribed to the Google 
>>>> Groups "Mayan EDMS" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>> an email to [email protected].
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>
>>> -- 
>>
>> --- 
>> You received this message because you are subscribed to the Google Groups 
>> "Mayan EDMS" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected].
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"Mayan EDMS" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to