我正在尝试使用Docker,我设置了一个Node App。 该应用程序在我的Gogs容器中的GIT Repo中。
我想将所有代码保存在容器中,所以在app根目录下我有我的Dockerfile。
我想创建一个Shell脚本来自动重新构建我的容器并重新运行它。 这个脚本稍后通过" webhook-container"在GIT推动期间。
Docker CLI只有一个构建和一个运行命令。但如果图像或名称已经存在的容器,两者都会失败。
处理此问题的最佳做法是什么?
备注:我不想在主机上保留我的应用来源,只更新源并重启容器! 我喜欢我的整个应用程序都是容器的想法。
答案 0 :(得分:2)
您可以在运行构建或运行命令之前删除docker容器和图像。
删除所有容器:
docker rm $(docker ps -a -q)
删除所有图片:
docker rmi $(docker images -q)
删除特定容器:
docker rm -f containerName
然后执行上面的相关命令后,运行你的脚本。您的脚本通常会根据需要构建,运行或拉动。