【docker】windows Dockerfile制作PostgreSQL镜像

编程入门 行业动态 更新时间:2024-10-28 16:19:20

简介

以PostgreSQL 11.4版本为例,介绍windows环境下,使用Dockerfile制作PostgreSQL镜像并运行的的方法。

本文目录结构

E:\document\PostgreSQL
├─Dockerfile
└─pgdata(空文件夹,用于存放数据文件)

pgdata文件夹的作用(重要)

运行容器时需要将自己电脑上的pgdata挂载到容器中,作为数据存储的位置,这样即使容器和镜像被删除,数据依然会存在自己电脑上。
注:
1、运行容器时,若自己电脑上的pgdata文件夹为空,则会创建初始数据;
2、运行容器时,若pgdata不为空,已经有之前的数据文件,则会保留并沿用pgdata中的数据。

Dockerfile文件编写

# 拉取官方镜像
FROM postgres:11.4
# 设置作者名字(选配)
LABEL author="hahaha"

# 设置时区(建议配置)
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo 'Asia/Shanghai' >/etc/timezone

#初始化PostgreSQL
# super user 用户名(建议配置)
ENV POSTGRES_USER root

# super user 密码(建议配置)
ENV POSTGRES_PASSWORD Abc123++

# 创建一个数据库,设置其名称(建议配置)
ENV POSTGRES_DB db

# 设置docker中的数据存储路径(选配)
# 默认值为/var/lib/postgresql/data,手动配置后会将数据文件存储到新的位置
ENV PGDATA=/var/lib/postgresql/data/pgdata

#容器运行时监听的端口
EXPOSE 5432

打包成镜像文件

使用命令行切换到Dockerfile所在目录(本文以vscode为例,没有vscode可以用cmd)
执行以下命令(注意最后面有一个点):
docker build -t postgresql:v11.4 .


如下图所示,打包成功后可以在docker客户端上看到PostgreSQL镜像。

运行镜像

如下图所示,运行镜像,输入任意名字、任意端口(一般是5432),本地pgdata空文件夹,容器中的pgdata文件夹。

更多推荐

【docker】windows Dockerfile制作PostgreSQL镜像

本文发布于:2023-06-13 08:02:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1362071.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:镜像   windows   docker   PostgreSQL   Dockerfile

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!