docker 使用官方镜像 安装 PostgreSQL

PostgreSQL  最新版本  10.x

pull一个最新的版本 

docker pull postgres

运行容器

docker run --name postgres -e POSTGRES_PASSWORD=123456 -p 54321:5432 \
-v /etc/data/pgdata:/var/lib/postgresql/data-d postgres

说明:

官方镜像的数据文件data夹是 /var/lib/postgresql/

官方镜像默认占用端口 5432

文件如果保存在宿主机 需要先创建文件夹

 

 

转载于:https://my.oschina.net/mahuilong/blog/1798661

1. 下载CentOS镜像 首先,我们需要下载CentOS的镜像文件。可以从官方网站下载,也可以从镜像站点下载。这里我们选择从镜像站点下载CentOS 7的镜像文件。 2. 安装Docker 安装Docker的步骤可以参考官方文档。这里不再赘述。 3. 创建Dockerfile文件 在本地机器上创建一个目录,用来存放Dockerfile和其他需要的文件。 ```bash mkdir postgresql cd postgresql ``` 然后,创建Dockerfile文件。 ```bash touch Dockerfile ``` 编辑Dockerfile文件,输入以下内容。 ```dockerfile # 基础镜像使用centos 7 FROM centos:7 # 作者信息 MAINTAINER Your Name <your.email@example.com> # 安装postgresql RUN yum install -y postgresql-server postgresql-contrib # 初始化数据库 RUN postgresql-setup initdb # 启动postgresql服务 RUN systemctl start postgresql # 设置postgresql服务开机自启动 RUN systemctl enable postgresql # 开放postgresql服务端口 EXPOSE 5432 # 启动命令 CMD ["/usr/bin/postgres", "-D", "/var/lib/pgsql/data", "-c", "config_file=/var/lib/pgsql/data/postgresql.conf"] ``` Dockerfile的解释如下: - 第一行指定基础镜像为centos 7。 - 第二行指定作者信息。 - 第三行安装postgresql。 - 第四行初始化数据库。 - 第五行启动postgresql服务。 - 第六行设置postgresql服务开机自启动。 - 第七行开放postgresql服务端口。 - 第八行指定启动命令。 4. 构建镜像postgresql目录下执行以下命令,构建postgresql镜像。 ```bash docker build -t postgresql:latest . ``` 其中,postgresql:latest是镜像的名称和标签。 5. 保存镜像 在本地机器上保存postgresql镜像。 ```bash docker save -o postgresql.tar postgresql:latest ``` 6. 导入镜像postgresql.tar文件拷贝到离线机器上,执行以下命令,导入postgresql镜像。 ```bash docker load -i postgresql.tar ``` 7. 运行容器 在离线机器上运行postgresql容器。 ```bash docker run -d --name postgresql -p 5432:5432 postgresql:latest ``` 其中,-d表示后台运行容器,--name指定容器名称,-p指定端口映射。 至此,我们就成功地在离线机器上制作了postgresql镜像,并且成功地运行了postgresql容器。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值