Skip to content

zhaowcheng/pgbuilder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

本项目旨在通过 Docker + Nix + binfmtx86_64 架构上生成 PostgreSQL 的 多架构 编译环境,具体支持的软件请查看 flake.nix 中的 devShells 属性。

首次使用先执行如下命令:

# 创建 binfmt,用于 x86_64 上运行其他架构的软件。
$ docker run --name binfmt --restart=always --privileged tonistiigi/binfmt --install all

# 创建便于容器间互相使用名称访问的网路。
$ docker network create pgbuilder

# 创建 nix 缓存服务(建议定期执行 docker commit nixcache nixcache 保存缓存容器)。
$ docker build -t nixcache -f Dockerfile.nixcache .
$ docker run -d --name nixcache --network pgbuilder --restart=always nixcache

然后在当前目录执行如下命令构建编译环境(每当编译环境有变更后也只需从这里开始运行):

$ DOCKER_BUILDKIT=0 docker build --network pgbuilder -t pgbuilder -f Dockerfile.pgbuilder .

构建成功后使用如下命令运行编译环境:

$ docker run -it --network pgbuilder --rm --privileged pgbuilder bash

当第一次构建完成编译环境后或者后续有新的构建时,建议执行如下命令上传缓存(密码请查看 Dockerfile.nixcache):

$ nix copy --all --to ssh://root@nixcache 

About

Multi-architecture build environment for postgresql.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages