Tôi muốn có cách để tham gia vào vùng chứa Postgresql và lấy một kết xuất dữ liệu từ nó.Làm thế nào để tạo ra một Dump Postgresql từ một container Docker?
Trả lời
Sử dụng lệnh sau đây vào một thiết bị đầu cuối UNIX:
docker exec <container_name> pg_dump <schema_name> > backup
Lệnh sau sẽ đổ chỉ chèn từ tất cả các bảng:
phương phápdocker exec <container_name> pg_dump --column-inserts --data-only <schema_name> inserts.sql
workaround khác là để bắt đầu sql postgre với một mountpoint để vị trí của bãi chứa trong docker.
như docker run -v <location of the files>
. Sau đó thực hiện một Docker kiểm tra trên Docker chạy chứa
docker inspect <image_id>
bạn có thể tìm thấy "Khối lượng" tag bên trong và một location.Go tương ứng với vị trí và bạn có thể tìm thấy tất cả các postgresql/mysql files.It làm việc cho tôi Cho chúng tôi biết nếu điều đó có hiệu quả với bạn không.
Chúc may mắn
Tôi đã chứa tên postgres với khối lượng gắn -v /backups:/backups
Để sao lưu gziped DB my_db tôi sử dụng:
docker exec postgres pg_dump -U postgres -F t my_db | gzip >/backups/my_db-$(date +%Y-%m-%d).tar.gz
Bây giờ tôi có
[email protected]:/backups$ ls
my_db-2016-11-30.tar.gz
Tôi nhận được 'không có tệp hoặc thư mục như vậy:/backups/my_db-2017-03-19.tar.gz', bạn có ý tưởng tại sao không? – drskullster
Tôi quản lý để làm việc xung quanh nó với 'docker exec -t postgres bash -c 'pg_dump -U postgres -F t my_db | gzip>/backups/my_db - $ (ngày +% Y-% m-% d) .tar.gz'' – drskullster
Có thể bạn không có/sao lưu dir và/hoặc nó không được gắn kết? – Jekis
Mặc dù giải pháp mountpoint trên nhìn đầy hứa hẹn, sau đây là giải pháp duy nhất làm việc cho tôi sau nhiều lần lặp đi lặp lại:
docker run -it -e PGPASSWORD=my_password postgres:alpine pg_dump -h hostname -U my_user my_db > backup.sql
gì là duy nhất trong trường hợp của tôi: Tôi có một mật khẩu trên cơ sở dữ liệu mà cần phải được thông qua trong; cần thiết để chuyển vào thẻ (alpine); và cuối cùng phiên bản máy chủ của các công cụ psql khác với các phiên bản docker.
- 1. Làm thế nào khởi động lại một container Docker ngừng
- 2. Truy cập từ một container Docker
- 3. Xác định superuser mật khẩu PostgreSQL cho một Docker container
- 4. Làm thế nào để cập nhật mã từ Git để một container Docker
- 5. Làm thế nào để chạy một kịch bản bash trong một container Alpine Docker
- 6. Làm thế nào để chạy một công việc định kỳ bên trong một container Docker
- 7. Chạy docker bên trong một container docker?
- 8. Làm thế nào để chạy vi trên docker container?
- 9. Làm thế nào để khởi động lại php-fpm bên trong một container docker?
- 10. Làm thế nào để chạy ganeload với gulp trong một container docker?
- 11. Làm thế nào để gửi đến stdin của một container docker-py?
- 12. Làm thế nào để chạy một cửa sổ docker container trên máy chủ Linux?
- 13. Làm thế nào để cập nhật phần mềm bên trong một container docker?
- 14. Làm thế nào để bắt đầu một vỏ mongodb trong container docker?
- 15. Làm thế nào để xây dựng một container docker với nix?
- 16. Làm thế nào để gắn khối lượng docker với container jenkins docker?
- 17. Bắt đầu từ một Shell trong Docker Alpine container
- 18. Làm thế nào để sử dụng MySQL dump từ một máy từ xa
- 19. Làm thế nào để tạo ra một 100% chiều rộng màn hình div bên trong một container trong bootstrap?
- 20. Nginx SSL bên trong một container Docker
- 21. Làm thế nào để khôi phục lại một bản sao lưu redis trong một redis container?
- 22. Docker - Mount Directory Từ Container đến Host
- 23. postgresql- khôi phục tệp .dump
- 24. Làm thế nào để xây dựng lại container docker trong docker-compose.yml?
- 25. Lấy biến môi trường từ Docker Container
- 26. Làm thế nào để gỡ lỗi một Unity Container "Resolve"?
- 27. Làm thế nào để tạo ra một mảng toàn cầu?
- 28. emacs: Orgmode, làm thế nào để tạo ra một danh sách từ một khối dòng
- 29. Làm thế nào để tạo ra một hàm chuyển đổi một số thành Hexavigesimal tính từ?
- 30. haskell - làm thế nào để tạo ra một nhị phân từ một mô-đun không chính?
nơi bạn chỉ định người dùng và mật khẩu của người dùng? – VaTo