Users DaveShaw and oblio encountered the error “postgres already running stop container” while attempting to rebuild their Discourse instances after site failures. DaveShaw initially tried rebooting the VM and killing the Docker container (570f65df6a38), but the rebuild still failed. codinghorror advised updating Docker itself, not just the system packages, and confirmed that DaveShaw was running an outdated version (1.2.0). After updating Docker to 1.4.1 via apt-get dist-upgrade lxc-docker, the rebuild succeeded. Later, oblio faced the same error on Docker 1.7.1 and Discourse latest, despite the forum running. sam asked for docker ps output, which showed a running container named “app”. oblio revealed the container was originally named “standalone” but somehow became “app”, causing confusion in the rebuild process. After restarting Docker and the OS, the container ran as “app”, resolving the issue. oblio asked whether the performance report could be manually triggered or must wait for cron. The thread highlights that stale or misnamed containers can cause rebuild failures, and updating Docker is often necessary to resolve compatibility issues with Discourse.
As per another topic, docker ps shows the following:
/$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
570f65df6a38 local_discourse/app:latest "/sbin/runit" 3 months ago Up 25 hours 0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp, 0.0.0.0:2222->22/tcp determined_pike
After killing the docker process, the rebuild still failed, so I ran the following:
sudo apt-get update && sudo apt-get dist-upgrade
From this thread here, and this time the rebuild failed.
Thanks again for your help, this Linux / Docker / Ruby / Postgres setup is well out of my comfort zone, but your guys are really helpful, so I keep struggling on and learning all the way .
No, you need to update Docker itself. There is another command to force Docker to update to latest. I believe it is apt-get lxc-docker or similar. There is at least one howto here on updating Docker.
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c05bf6a1b8fa local_discourse/app "/sbin/boot" 5 weeks ago Up 22 hours 0.0.0.0:443->443/tcp, 0.0.0.0:2222->22/tcp app
I found the root case. I had renamed the container “standalone” but apparently something went wrong and even though Discourse worked, some bits and pieces were still looking for “app”.
After a docker restart and OS restart the forum was running, as “app”, even though the container was “standalone.yml”.
I have no idea how this could have happened, isn’t the container name just the yml file name?
Can I force the execution of the performance report or do I have to wait for cron to trigger it?