harbor-db 启动时报initdb: directory "/var/lib/postgresql/data" exists but is not empty
通过docker-compose 启动harbor服务时,harbor-db 容器一直处于 Restarting 状态;
问题解决步骤:
1.查看容器启动日志
docker logs -f harbor-db ,报错日志提示如下:
从日志中看到提示 directory "/var/lib/postgresql/data" exists but is not empty
从而在宿主机上想看/var/lib/postgresql/data 是否为空,但是一直找不到,在网上也没找到方法。。。
2.想到查看下容器的yaml文件,查看挂载目录信息 vim docker-compose.yml
从yaml文件中看到是将宿主机上的 /data/database挂载到容器中的 /var/lib/postgresql/data 目录下,那是不是 /data/database 目录不为空呢
3.将 /data/database 目录删除
4.再将容器删除docker-compose down ,docker-compose up -d ,将容器重启,发现harbor-db启动成功了
出现如上的原因是我之前在机器上安装过harbor,第一次安装的时候/data/database 下创建了数据,再次安装时需要将之前的脏数据清空