fresh edX installation, local/not a fork
tutor 14.0.5
docker version 20.10.12, build 20.10.12-0ubuntu2~20.04.1
Quickstart SEEMS to fail (no http page generated) but the mysql instance is running - the database just never appears to be initialised. Sorry if this is a rehash/known issue, but I’ve had zero luck searching for someone else with this problem. It may be a local docker config issue, but I can’t seem to run it down. Any thoughts where to start?
ps. Log below contains a warning and then an error…? b’PATH’?
[ the b'PATH variable is not set. Defaulting to a blank string
]
…
[ env cannot contain 'PATH' and b'PATH' keys
]
================================================
Database creation and migrations
================================================
Initialising all services...
Running init task: hooks/mysql/init
docker-compose -f /home/gpowers/.local/share/tutor/env/local/docker-compose.yml -f /home/gpowers/.local/share/tutor/env/local/docker-compose.prod.yml -f /home/gpowers/.local/share/tutor/env/local/docker-compose.tmp.yml --project-name tutor_local -f /home/gpowers/.local/share/tutor/env/local/docker-compose.jobs.yml -f /home/gpowers/.local/share/tutor/env/local/docker-compose.jobs.tmp.yml run --rm mysql-job sh -e -c 'echo "Initialising MySQL..."
mysql_connection_max_attempts=10
mysql_connection_attempt=0
until mysql -u root --password="wnvlLUS7" --host "mysql" --port 3306 -e '"'"'exit'"'"'
do
mysql_connection_attempt=$(expr $mysql_connection_attempt + 1)
echo " [$mysql_connection_attempt/$mysql_connection_max_attempts] Waiting for MySQL service (this may take a while)..."
if [ $mysql_connection_attempt -eq $mysql_connection_max_attempts ]
then
echo "MySQL initialisation error" 1>&2
exit 1
fi
sleep 10
done
echo "MySQL is up and running"
# edx-platform database
mysql -u root --password="wnvlLUS7" --host "mysql" --port 3306 -e "CREATE DATABASE IF NOT EXISTS openedx;"
mysql -u root --password="wnvlLUS7" --host "mysql" --port 3306 -e "CREATE USER IF NOT EXISTS '"'"'openedx'"'"';"
mysql -u root --password="wnvlLUS7" --host "mysql" --port 3306 -e "ALTER USER '"'"'openedx'"'"'@'"'"'%'"'"' IDENTIFIED BY '"'"'NC4z1IJF'"'"';"
mysql -u root --password="wnvlLUS7" --host "mysql" --port 3306 -e "GRANT ALL ON openedx.* TO '"'"'openedx'"'"'@'"'"'%'"'"';"'
Starting tutor_local_mysql_1 ... done
WARNING: The b'PATH' variable is not set. Defaulting to a blank string.
Traceback (most recent call last):
File "./docker-compose", line 11, in <module>
load_entry_point('docker-compose==1.25.0', 'console_scripts', 'docker-compose')()
File "/usr/lib/python3/dist-packages/compose/cli/main.py", line 72, in main
command()
File "/usr/lib/python3/dist-packages/compose/cli/main.py", line 128, in perform_command
handler(command, command_options)
File "/usr/lib/python3/dist-packages/compose/cli/main.py", line 896, in run
run_one_off_container(
File "/usr/lib/python3/dist-packages/compose/cli/main.py", line 1376, in run_one_off_container
exit_code = call_docker(
File "/usr/lib/python3/dist-packages/compose/cli/main.py", line 1498, in call_docker
return subprocess.call(args, env=environment)
File "/usr/lib/python3.8/subprocess.py", line 340, in call
with Popen(*popenargs, **kwargs) as p:
File "/usr/lib/python3.8/subprocess.py", line 858, in __init__
self._execute_child(args, executable, preexec_fn, close_fds,
File "/usr/lib/python3.8/subprocess.py", line 1636, in _execute_child
for dir in os.get_exec_path(env))
File "/usr/lib/python3.8/os.py", line 645, in get_exec_path
raise ValueError(
ValueError: env cannot contain 'PATH' and b'PATH' keys
Error: Command failed with status 1: docker-compose -f /home/gpowers/.local/share/tutor/env/local/docker-compose.yml -f /home/gpowers/.local/share/tutor/env/local/docker-compose.prod.yml -f /home/gpowers/.local/share/tutor/env/local/docker-compose.tmp.yml --project-name tutor_local -f /home/gpowers/.local/share/tutor/env/local/docker-compose.jobs.yml -f /home/gpowers/.local/share/tutor/env/local/docker-compose.jobs.tmp.yml run --rm mysql-job sh -e -c echo "Initialising MySQL..."
mysql_connection_max_attempts=10
mysql_connection_attempt=0
until mysql -u root --password="wnvlLUS7" --host "mysql" --port 3306 -e 'exit'
do
mysql_connection_attempt=$(expr $mysql_connection_attempt + 1)
echo " [$mysql_connection_attempt/$mysql_connection_max_attempts] Waiting for MySQL service (this may take a while)..."
if [ $mysql_connection_attempt -eq $mysql_connection_max_attempts ]
then
echo "MySQL initialisation error" 1>&2
exit 1
fi
sleep 10
done
echo "MySQL is up and running"
# edx-platform database
mysql -u root --password="wnvlLUS7" --host "mysql" --port 3306 -e "CREATE DATABASE IF NOT EXISTS openedx;"
mysql -u root --password="wnvlLUS7" --host "mysql" --port 3306 -e "CREATE USER IF NOT EXISTS 'openedx';"
mysql -u root --password="wnvlLUS7" --host "mysql" --port 3306 -e "ALTER USER 'openedx'@'%' IDENTIFIED BY 'NC4z1IJF';"
mysql -u root --password="wnvlLUS7" --host "mysql" --port 3306 -e "GRANT ALL ON openedx.* TO 'openedx'@'%';"
Summary
tutor (Nutmeg) failed quickstart does not complete due to error in mysql initialisation.