不会保存。这个脚本默认是用 docker run 来启动容器的,该命令启动的容器都是临时容器。
容器内的文件修改都只存在于运行时,容器退出后所有的修改都会被丢弃。
如果需要保存容器内的修改,有以下几种方法:
bash
1. 使用 docker commit 命令,可以将运行中的容器保存为新镜像。下次就可以从该镜像启动一个包含修改的新容器。
2. 使用 volume 目录挂载,可以将主机目录挂载到容器内,实现双向同步。例如上例脚本中的 -v $SHARED_HOST_DIR:$SHARED_DOCKER_DIR:rw 就是共享主机目录到容器。
3. 使用 docker run 参数 --rm=false,可以在容器退出后保留容器记录,下次重新启动的时候就可以恢复。
4. 使用 Dockerfile 构建镜像的方式,每次修改后重建镜像。
综上,如果需要保存容器内修改,需要额外的操作来提交修改或者挂载主机目录。默认情况下 docker run 是不会自动保存的。