拉取Postgres镜像

docker pull postgres
(如果要加版本docker pull postgres:latest,latest为最新版本,可替换为其他版本)

查看本地镜像

来查看是否已安装了postgres
docker images

运行容器

安装完成后,我们可以使用以下命令来运行 postgres容器:
docker run -d --name some-postgres -e POSTGRES_PASSWORD=postgres postgres

参数说明:
POSTGRES_PASSWORD,是唯一的必选环境变量,用于给用户设置密码。默认的用户名是"postgres",如果把POSTGRES_PASSWORD设置为"postgres",则可以使用用户名"postgres"和密码"postgres"来连接数据库。
POSTGRES_USER,可以指定用户名,替换默认的"postgres"。
POSTGRES_DB,可以给默认的数据库取一个别名,如果不取,默认数据库名为环境变量POSTGRES_USER的值。
PGDATA,可以指定一个(容器内的)目录,这个目录会存放数据库文件。为了防止容器被删除后数据丢失,一般都把这个目录挂载到本机(WSL 2)上。

查看是否安装成功

通过 docker ps 命令查看是否安装成功:
(docker ps列出所有在运行的容器信息)

打开postgres客户端进行操作

host:输入ip addr,使用eth0中的ip

golang中连接docker中的postgres

ip使用docker0中的ip

db, _ := gorm.Open("postgres", "host=172.17.0.1 user=postgres dbname=postgres sslmode=disable password=postgres")

如果出现下面问题,说明已经有了一个容器,需要先删除容器


可以用命令 sudo docker container ls 看下本机正在运⾏的容器
Delete all containers 删除容器
Delete all images 删除镜像
docker rm containerID 删除某个容器
docker rm imagesID 删除某个镜像
images:跟平常使用的虚拟机的镜像一个意思,相当于一个模版。
container:images运行时的的状态。
docker对于运行过的image都保留一个状态(container),可以使用命令docker ps来查看正在运行的container,对于已经退出的container,则可以使用docker ps -a来查看。
如果你退出了一个container而忘记保存其中的数据,你可以使用docker ps -a来找到对应的运行过的container使用docker commit命令将其保存为image然后运行。
如果想要删除运行过的images必须首先删除它的container。

posted on 2021-10-21 19:30  飞飞乐园  阅读(63)  评论(0编辑  收藏  举报