Postgresql 如何将已构建的docker容器添加到docker compose?
我有一个名为“postgres”的容器,它是用普通的docker命令构建的,里面有一个配置好的PostgreSQL。此外,我还有一个docker compose设置,其中包含两个服务——“api”和“nginx” 如何将“postgres”容器作为服务添加到现有docker compose设置中,而无需重新构建?PostgreSQL数据库是手动配置的,并且充满了数据,因此重建是一个非常非常糟糕的选择Postgresql 如何将已构建的docker容器添加到docker compose?,postgresql,docker,docker-compose,docker-image,Postgresql,Docker,Docker Compose,Docker Image,我有一个名为“postgres”的容器,它是用普通的docker命令构建的,里面有一个配置好的PostgreSQL。此外,我还有一个docker compose设置,其中包含两个服务——“api”和“nginx” 如何将“postgres”容器作为服务添加到现有docker compose设置中,而无需重新构建?PostgreSQL数据库是手动配置的,并且充满了数据,因此重建是一个非常非常糟糕的选择 我查阅了docker compose文档,但遗憾的是,如果不重新构建,就无法做到这一点。不幸的是
我查阅了docker compose文档,但遗憾的是,如果不重新构建,就无法做到这一点。不幸的是,这是不可能的 您不引用docker compose上的容器,而是使用图像 您需要创建一个卷和/或绑定装载它以保留数据库数据 这是因为容器不保存数据,如果您已经用数据填充了容器,并且没有对其进行绑定装载或卷,那么使用
docker container stop
将丢失所有内容
建议:
docker cp
Docker cp将内容从容器复制到主机
您可以使用将此容器保存在新图像中,并在docker compose中使用新创建的图像
docker container commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
然而,我更喜欢使用DockerFile和脚本来创建图像,以填充我的数据等