折腾了大半天,记录下rust开发pg拓展并安装到生产docker全程:
-
使用pgrx开发过程省略,注意和生产pg版本对上,我的是pg14
-
开发的终点是cargo pgrx package ,我的项目叫first,那么项目目录下 /target/release/first-pg14/usr/share/postgresql/14/extension/ 会生成一个sql和一个control文件, 同时/target/release/first-pg14/usr/lib/postgresql/14/lib 会生成so文件
-
启动dockers postgres
volumes:
# docker 和wsl共享/var/lib/docker/volumes/doc_pg/_data
pg:
services:
postgres:
build: .
# image: postgres
# command: postgres -c config_file=/etc/postgresql.conf
container_name: mypg
environment:
POSTGRES_USER: "postgres"
POSTGRES_PASSWORD: "你的密码"
volumes:
- pg:/var/lib/postgresql/data
ports:
- "5432:5432"
# restart: always
- 拷贝三个文件
sudo docker