运行 在 docker 上与上次启动时已经包含文件的卷汇合

Run confluence on docker with volume that has already files in it from last startup

我通过 docker-compose

启动 postgres
version: "3.7"
services:
  postgres:
    image: postgres:9.6.15
    container_name: some-postgres
    volumes:
      -  postgresql-volume:/var/lib/postgresql/data
    environment:
      - POSTGRES_PASSWORD=rw_dev
      - POSTGRES_USER=rw_dev
      - POSTGRES_DB=rw_development
    ports:
      - "5432:5432"

volumes:
    postgresql-volume:
      external: true

使用命令:

docker volume create --name postgresql-volume -d local
docker-compose up -d

我通过命令启动confluence

docker run -v  E:\tmp\conflu:/var/atlassian/application-data/confluence  --name="confluence" --env ATL_JDBC_URL=jdbc:postgresql://postgres:5432/rw_development --env ATL_JDBC_USER=rw_dev --env ATL_JDBC_PASSWORD=rw_dev  --env ATL_DB_DRIVER=org.postgresql.Driver --env ATL_DB_TYPE=postgresql   --network devops_default --link some-postgres:some-postgres --link postgres:postgres -d -p 8090:8090 -p 8091:8091 atlassian/confluence-server

现在,如果我停止并删除 confluence 容器,并且我正在模拟我想恢复已经有一些文件的 confluence 的情况,我在通过 docker 启动它时遇到错误.

通常它在 http://localhost:8090/ 上工作正常,但在这种情况下我在这个网站上得到 ERR_EMPTY_RESPONSE

如果我删除 E:\tmp\conflu 目录中的所有文件,那么 stop/start confluence 可以正常工作。 请指导我,如果它已经有一些文件,为什么它不能正常工作?

谢谢

docker logs confluence 最后几行给我:

07-Nov-2019 12:23:10.841 WARNING [Catalina-utility-1] org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThreads The web application [ROOT] appears to have started a thread named [AtlassianEvent::CustomizableThreadFactory-1] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
 sun.misc.Unsafe.park(Native Method)
 java.util.concurrent.locks.LockSupport.park(Unknown Source)
 java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
 java.util.concurrent.LinkedBlockingQueue.take(Unknown Source)
 java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
 java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
 java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
 java.lang.Thread.run(Unknown Source)
07-Nov-2019 12:23:10.874 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio-8090"]
07-Nov-2019 12:23:10.903 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in [215,140] milliseconds

备份和恢复应该像this一样完成,您不能在配置实例后简单地尝试使用相同的数据文件重新部署