Description
Description
A clear description of the bug
Based on the README.md
file, the way to spin up dev infrastructure is to run prefect-server dev infrastructure
. It appears that interacting with the prefect-server
CLI that uses the server/docker/docker-compose.yml
file will cause errors due to the missing ${POSTGRES_DATA_PATH}
config/environment variable that does not have a default value.
Error Message:
WARNING: The POSTGRES_DATA_PATH variable is not set. Defaulting to a blank string.
WARNING: The PREFECT_SERVER_DB_CMD variable is not set. Defaulting to a blank string.
Pulling postgres ... done
Pulling hasura ... done
WARNING: The POSTGRES_DATA_PATH variable is not set. Defaulting to a blank string.
WARNING: The PREFECT_SERVER_DB_CMD variable is not set. Defaulting to a blank string.
Creating network "prefect-server" with the default driver
Creating docker_postgres_1 ... error
ERROR: for docker_postgres_1 Cannot create container for service postgres: create .: volume name is too short, names should be at least two alphanumeric characters
ERROR: for postgres Cannot create container for service postgres: create .: volume name is too short, names should be at least two alphanumeric characters
ERROR: Encountered errors while bringing up the project.
Expected Behavior
What did you expect to happen instead?
The command should run successfully and bring up the hasura & postgres services.
Reproduction
A minimal example that exhibits the behavior.
cd server
prefect-server dev infrastructure
Environment
Any additional information about your environment
Docker version 19.03.8, build afacb8b
docker-compose version 1.25.5, build 8a1c60f6
On macOS, can get OS information if needed
Optionally run prefect diagnostics
from the command line and paste the information here
Potential Solutions
Currently, both the docker-compose.yml
files located at prefect/cli/docker-compose.yml
and prefect/server/docker/docker-compose.yml
both require the POSTGRES_DATA_PATH
environment variable. Depending on the goal of having the two differing docker-compose files, we can remove the option for a volume from the prefect/server/docker/docker-compose.yml
file, we can add the volume_path
key to the [database]
section of the configuration at prefect/server/src/prefect_server/config.toml
, or we can merge the two docker-compose.yml files at the locations noted above.
The decision will likely depend on the history of why there are two files in the first place. If the file located in the prefect_server subdirectory is meant specifically for developing on the server, then my personal vote is for removing the volume.
Activity