pg+pglogical+pg_pathman

docker下創(chuàng)建centos7容器

1.創(chuàng)建網(wǎng)絡

docker network create --subnet=172.19.0.0/16 pgnetwork
docker network ls -- 查看 此處使用pgnetwork
NETWORK ID NAME DRIVER SCOPE
d725415b8b96 bridge bridge local
e4012194a61b host host local
4234dac60f16 none null local
e73e04a89c47 pgnetwork bridge local
f8c3a20c67c2 rabbitmqnet bridge local

docker network inspect pgnetwork --查看網(wǎng)絡內部信息

2.docker pull centos -- 下載latest的 centos 鏡像,此處鏡像重命名為centos:7

3.創(chuàng)建容器 pg_ip_ms,pg_ip_s,映射端口5300,5301

docker run -itd --privileged -v /sys/fs/cgroup:/sys/fs/cgroup -p 5370:5432 --name pg_ip_ms --net pgnetwork --ip 172.19.0.5 centos:7 /usr/sbin/init

--privileged container內的root擁有真正的root權限。否則闽晦,container內的root只是外部的一個普通用戶權限。
privileged啟動的容器杆融,可以看到很多host上的設備体箕,并且可以執(zhí)行mount痕钢。甚至允許你在docker容器中啟動docker容器香到。
--net pgnetwork 指定網(wǎng)絡
--ip 172.19.0.2 指定IP

4.進入容器

docker exec -it pg_ip_ms /bin/bash

5.install postgresql

postgresl install
yum install https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm -- 下載rpm
yum install postgresql96 -- install client
yum install postgresql96-server postgresqyl96-contrib -- install sderver和第三方插件
/usr/pgsql-9.6/bin/postgresql96-setup initdb -- 初始化數(shù)據(jù)庫
systemctl enable postgresql-9.6 --開機自啟
systemctl start postgresql-9.6 -- 啟動服務

完成以上操作后可以登陸postgresql試試
su postgres
psql 可以登陸試試鱼冀,之后修改配置文件

修改配置文件postgresql.conf

listen_addresses ='*'
port=5432
password_encryption = on

修改pg_hba.conf

host all all 0.0.0.0/0 md5.
host all all 127.0.0.1/32 md5.

systemctl restart postgresql-9.6
登陸數(shù)據(jù)庫su - postgres
psql
alter user postgres with password '123456';

6.install pglogical pglogical-rhel-1.0-3.noarch.rpm

從主機復制到容器sudo docker cp host_path containerID:container_path
從容器復制到主機sudo docker cp containerID:container_path host_path
docker cp pglogical-rhel-1.0-3.noarch.rpm pg_xxx:/home/

yum install pglogical-rhel-1.0-3.noarch.rpm
yum install postgresql96-pglogical

vi /var/lib/pgsql/9.6/data/postgresql.conf

修改配置文件postgresql.conf

listen_addresses ='*'
port=5432
password_encryption = on
shared_preload_libraries = 'pglogical'
max_worker_processes = 10 # one per database needed on provider node
wal_level = 'logical'
max_wal_senders = 10 # one per node needed on provider node
max_replication_slots = 10 # one per node needed on provider node
track_commit_timestamp = on

vi /var/lib/pgsql/9.6/data/pg_hba.conf

修改pg_hba.conf

host all all 0.0.0.0/0 trust.

local replication postgres trust
host replication postgres 127.0.0.1/32 trust
host replication postgres ::1/128 trust
host replication postgres 0.0.0.0/0 trust

systemctl restart postgresql-9.6
su - postgres
psql
CREATE EXTENSION pglogical; -- create 擴展工具
select extname, extowner from pg_extension; --查看擴展工具

7.installpg_pathman

git clone https://github.com/postgrespro/pg_pathman
下載到主機的root文件夾报破, 然后復制到容器內

對于bash: make: command not found錯誤
yum -y install gcc automake autoconf libtool make

對于make: pg_config: Command not found錯誤
find / -name pg_config --查看路徑/usr/pgsql-9.6/bin/pg_config
export PATH=/usr/pgsql-9.6/bin:$PATH

cd pg_pathman

對于Makefile:66: /usr/pgsql-9.6/lib/pgxs/src/makefiles/pgxs.mk: No such file or directory錯誤
yum install postgresql96-devel

對于fatal error: openssl/ssl.h: No such file or directory #include <openssl/ssl.h>
類似問題參考
yum install openssl
yum install openssl-devel
make USE_PGXS=1
make USE_PGXS=1 install

修改配置文件postgresql.conf

vi /var/lib/pgsql/9.6/data/postgresql.conf

shared_preload_libraries = 'pg_pathman,pglogical'

systemctl restart postgresql-9.6
su - postgres
psql
create extension pg_pathman;
\dx

-==============================================================
通過以上過程,鏡像層層疊加生成由centos:7包含postgresql雷绢,pglogical和pg_pathman的鏡像。
10.0.0.96 image:pg_ip_pglogical_pathman
-==============================================================
docker commit container_id pg_ip_pglogical_pathman -- 生成鏡像pg_ip_pglogical_pathman

在這個鏡像中理卑,數(shù)據(jù)庫pg已經包含了pglogical和pg_pathman的配置包翘紊, 如果新建的數(shù)據(jù)庫需要使用這兩個插件 可以使用下列sql語句添加
create extension pglogical;
create extension pg_pathman;

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市藐唠,隨后出現(xiàn)的幾起案子帆疟,更是在濱河造成了極大的恐慌,老刑警劉巖宇立,帶你破解...
    沈念sama閱讀 217,084評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件踪宠,死亡現(xiàn)場離奇詭異,居然都是意外死亡妈嘹,警方通過查閱死者的電腦和手機柳琢,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,623評論 3 392
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來润脸,“玉大人柬脸,你說我怎么就攤上這事”醒保” “怎么了倒堕?”我有些...
    開封第一講書人閱讀 163,450評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長爆价。 經常有香客問我垦巴,道長,這世上最難降的妖魔是什么铭段? 我笑而不...
    開封第一講書人閱讀 58,322評論 1 293
  • 正文 為了忘掉前任骤宣,我火速辦了婚禮,結果婚禮上序愚,老公的妹妹穿的比我還像新娘涯雅。我一直安慰自己,他們只是感情好展运,可當我...
    茶點故事閱讀 67,370評論 6 390
  • 文/花漫 我一把揭開白布活逆。 她就那樣靜靜地躺著,像睡著了一般拗胜。 火紅的嫁衣襯著肌膚如雪蔗候。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,274評論 1 300
  • 那天埂软,我揣著相機與錄音锈遥,去河邊找鬼纫事。 笑死,一個胖子當著我的面吹牛所灸,可吹牛的內容都是我干的丽惶。 我是一名探鬼主播,決...
    沈念sama閱讀 40,126評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼爬立,長吁一口氣:“原來是場噩夢啊……” “哼钾唬!你這毒婦竟也來了?” 一聲冷哼從身側響起侠驯,我...
    開封第一講書人閱讀 38,980評論 0 275
  • 序言:老撾萬榮一對情侶失蹤抡秆,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后吟策,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體儒士,經...
    沈念sama閱讀 45,414評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,599評論 3 334
  • 正文 我和宋清朗相戀三年檩坚,在試婚紗的時候發(fā)現(xiàn)自己被綠了着撩。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,773評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡匾委,死狀恐怖睹酌,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情剩檀,我是刑警寧澤憋沿,帶...
    沈念sama閱讀 35,470評論 5 344
  • 正文 年R本政府宣布,位于F島的核電站沪猴,受9級特大地震影響辐啄,放射性物質發(fā)生泄漏战授。R本人自食惡果不足惜免糕,卻給世界環(huán)境...
    茶點故事閱讀 41,080評論 3 327
  • 文/蒙蒙 一屹篓、第九天 我趴在偏房一處隱蔽的房頂上張望梯找。 院中可真熱鬧,春花似錦砖顷、人聲如沸喷众。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,713評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽岭参。三九已至,卻和暖如春尝艘,著一層夾襖步出監(jiān)牢的瞬間演侯,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,852評論 1 269
  • 我被黑心中介騙來泰國打工背亥, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留秒际,地道東北人悬赏。 一個月前我還...
    沈念sama閱讀 47,865評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像娄徊,于是被迫代替她去往敵國和親闽颇。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,689評論 2 354

推薦閱讀更多精彩內容

  • 五寄锐、Docker 端口映射 無論如何兵多,這些 ip 是基于本地系統(tǒng)的并且容器的端口非本地主機是訪問不到的。此外锐峭,除了...
    R_X閱讀 1,748評論 0 7
  • About:PostgreSQL About 《PostgreSQL 源碼分析系列》 PostgreSQL 源碼分...
    ty4z2008閱讀 8,182評論 1 40
  • linux 查看系統(tǒng)版本確認使用的docker版本 uname -a --查看Linux內核版本命令cat /pr...
    只有香如故閱讀 1,220評論 1 4
  • 轉載自 http://blog.opskumu.com/docker.html 一中鼠、Docker 簡介 Docke...
    極客圈閱讀 10,499評論 0 120
  • 差不多一年半沒有去旅行了可婶。終于盼到了說了很多年的海島游沿癞,卻突然不興奮了。 畢竟飛機晚點矛渴,我就沒有辦法睡足覺好好化個...
    賤賤小姐閱讀 178評論 0 0