- You need to add your ssh keys to a ssh agent via
eval $(ssh-agent -s) && ssh-add ~/.ssh/id_rsa. The agent will be mounted during container build, which is used to clone private repos. - Make sure to allocate >= ~20GB memory resource to docker.
- Your
~/.awsfolder is mounted as a read only volume to pgduck-server container so that it can read/write buckets with your aws credentials. You are expected to set up your aws credentials before. (possible to read/write from/to production s3 buckets)
- Run
cd docker && docker compose upto create all containers (minio, pgduck-server, and pg_lake-postgres) You can take a coffee break, this will take some time (~30 minutes on mac air m3) but a one time operation. If you want to build against different refs (default is main branch) or different postgres versions (default is 18), you can override them in env file. - At the end, you can connect to postgres via
docker exec -it pg_lake psql.
Warning
These containers are mainly used for test and development purposes. Be cautious when you run them in production environments.