(二)docker安装并持久化postgresql数据库
生活随笔
收集整理的這篇文章主要介紹了
(二)docker安装并持久化postgresql数据库
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
安裝docker步驟略過
1、拉取postgresql鏡像
docker pull postgresql2、在操作系統(tǒng)上創(chuàng)建掛載點(diǎn)
創(chuàng)建本地卷,數(shù)據(jù)卷可以在容器之間共享和重用,?默認(rèn)會(huì)一直存在,即使容器被刪除(docker volume inspect?pgdata可查看數(shù)據(jù)卷的本地位置)
# 創(chuàng)建目錄作為 docker container 的掛載點(diǎn) $mkdir -p $HOME/docker/volumes/postgres# 也可以使用docker volume命令 docker volume create pgdata3、啟動(dòng)容器
docker run --name postgres2 -e POSTGRES_PASSWORD=password -p 5432:5432 -v pgdata:/var/lib/postgresql/data -d postgres?
這里我們?cè)敿?xì)地將幾個(gè)參數(shù)說明一下,方便大家根據(jù)自己的需求進(jìn)行改動(dòng)。
- -it -d?這兩個(gè)參數(shù)一般同時(shí)使用,保證 container 以交互的方式在后臺(tái)運(yùn)行。
- --rm?這個(gè)參數(shù)是指在 container 停止時(shí)自動(dòng)將 container 刪除。
- --name?你在使用 docker ps 命令時(shí)看到的 container 的名字。
- -e POSTGRES_USER=dbuser?這個(gè)是設(shè)置 container 中的環(huán)境變量用的參數(shù),指的是設(shè)計(jì)數(shù)據(jù)庫用戶為 dbuser 。之后登錄數(shù)據(jù)庫時(shí)就是使用這個(gè)用戶名。
- -e POSTGRES_PASSWORD=password?同上,也是設(shè)置 container 中的環(huán)境變量,這個(gè)是設(shè)置你登錄數(shù)據(jù)庫的密碼,這里設(shè)置的密碼為"password"。
- -e POSTGRES_DB=testdb?同上,初始化一個(gè)新的數(shù)據(jù)庫,其名字為 testdb。
- -p 5432:5432?這個(gè)是將主機(jī)的端口與 container 暴露的端口進(jìn)行映射。其格式為 -p 主機(jī)端口: container 端口。即 : 前為主機(jī)端口,后為 container 端口。
- -v $HOME/docker/volumes/postgres:/var/lib/postgresql/data?掛載目錄。將容器中的 /var/lib/postgresql/data 目錄掛載至我們剛才新建的磁盤上的 $HOME/docker/volumes/postgres ,以便數(shù)據(jù)的持久化
- postgres?為下載下來的 image 的名字。如果你的主機(jī)上沒有相應(yīng)的 image ,則 docker 會(huì)自動(dòng)從 dockerhub 活著你設(shè)置的源上下載相應(yīng)的 image。
4、進(jìn)入postgres容器執(zhí)行sql
docker exec -it postgres2 bashpsql -h localhost -p 5432 -U postgres --password至此,postgresql安裝成功。
?
參考文章:
docker安裝并持久化postgresql數(shù)據(jù)庫
【圖文教程】告別痛苦的安裝過程!使用 docker 5分鐘快速啟動(dòng) postgres 并遠(yuǎn)程訪問
總結(jié)
以上是生活随笔為你收集整理的(二)docker安装并持久化postgresql数据库的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: (一)Mac OS安装PostgreSQ
- 下一篇: (三)用docker-compose部署