你好,用不已经运行我是同的停止征哥,我相信不少人都会遇到这样的命令问题,容器本来运行的启动器好好的,可是何使有一天报错退出了,重启容器依然报错,用不已经运行因为默认命令会崩溃,同的停止这意味着我无法启动容器后使用 docker exec。命令
今天分享:如何不重新构建镜像的启动器情况解决容器报错的问题,只需要两步。
这一步是为了保存之前对容器的变更,如果没有对容器写入东西,这一步可以忽略。
先查看报错的容器,记录它的 CONTAINER_ID:
docker ps -a
然后将容器保存至新的镜像:
docker commit $CONTAINER_ID somenzz/image_xxx_new
第二步,从新的镜像启动一个新的命令
比如说启动一个 shell,去修复容器:
docker run -ti --entrypoint=sh somenzz/image_xxx_new
这里用到了 entrypoint[1],在构建镜像的时候,我们可以使用 CMD 或者 ENTRYPOINT 配置容器启动时的执行命令,但这两者有所不同:
容器就是运行环境的打包。我在自己的服务器上安装了 Docker,那想获取一个 Python 环境,太简单了:
首先下载 Python 镜像,目前最新是 3.10.4,你可以 docker search python 查看。
sudo docker pull python
然后启动一个后台永不退出的容器:
sudo docker run --name mypython -dt python /bin/bash
然后就可以随意使用 Python 了:
sudo docker exec -it mypython python [宿主机器的 Python 脚本,非容器内部]
如果要安装依赖:
sudo docker exec -it mypython pip install requests
这样使用 Python 容器,不修改系统的一个文件,安全环保,不想用了,直接停止删除容器,再删除镜像。
责任编辑:武晓燕 来源: Python七号 Docker容器镜像(责任编辑:知识)
保利协鑫能源(3800.HK)盈警后低开高走半日收涨7% 多晶硅价格明显上升
基石科技控股(08391.HK)完成配发6962.5万股 每股0.40港元
12只强势股先抑后扬直冲涨停 创业板盘中最大回调幅度接近2%