DEV Community

arafatruetbd
arafatruetbd

Posted on

How to Import a SQL File into a Dockerized PostgreSQL Database

If you’re running PostgreSQL inside a Docker container, importing a SQL dump file is a common task when setting up or migrating databases. In this quick guide, I’ll show you how to copy your SQL file into the container and import it easily.


Prerequisites

  • A running PostgreSQL container (e.g., named demo_db)
  • Your SQL dump file ready on your host machine (e.g., demo.sql)
  • Basic knowledge of Docker commands

Step 1: Copy the SQL file into the container

Use the docker cp command to copy the SQL file from your local machine into the PostgreSQL container:

docker cp demo.sql demo_db:/demo.sql
Enter fullscreen mode Exit fullscreen mode

This copies the file to the root directory / inside the container.


Step 2: Import the SQL file into the database

Run the psql command inside the container to execute the SQL file against your target database:

docker exec -i demo_db psql -U postgres -d demo_database -f /demo.sql
Enter fullscreen mode Exit fullscreen mode
  • demo_db is the container name.
  • postgres is the PostgreSQL user.
  • demo_database is your database name.
  • -f /demo.sql points to the SQL file inside the container.

Troubleshooting tips

  • Ensure your container is running (docker ps).
  • Verify database name and user credentials.
  • Large files might take time, so be patient.

Conclusion

Importing SQL files into a Dockerized PostgreSQL database is straightforward once you get familiar with the commands. Using docker cp and docker exec, you can easily manage your database dumps without leaving your containerized environment.


If you found this helpful, feel free to clap and follow for more Docker and database tips!

Top comments (0)