- 創建 docker-compose.yml 文件,內容參考
db:
container_name: pgsql //生成的容器名稱
restart: always
image: postgres: latest // postgres 鏡像 privileged: true //解決權限 ports: - 5432:5432 //映射端口號 environment: POSTGRES_PASSWORD: ${pwd} //密碼 PGDATA: /var/lib/postgresql/data/pgdata //數據存儲文件夾 volumes: - /home/server/pg_data/data:/var/lib/postgresql/data/pgdata //將數據映射到對應的路徑
注:啟動時可能會出現權限問題,所以添加了 privileged: true
- 使用 docker-compose 命令啟動服務
docker-compose up -d
在docker-compose的時候 docker-compose up會優先使用已有的容器,而不是重新創建容器。需要帶上 --force-recreate 參數重新創建容器 docker-compose up -d --force-recreate 。
docker-compose的安裝
參考:https://docs.docker.com/compose/install/#prerequisites
https://www.cnblogs.com/awakenedy/articles/10944036.html
本文內容參考:
https://blog.csdn.net/sinat_20560415/article/details/81204445
注:當有多個schema(模式)時,可以設置postgresql.conf改變默認的search_path,否則需要每次登陸時設置search_path以訪問不同模式下面的對象;
