Bootstrap

Dockerfile创建镜像异常问题解决

Dockerfile创建

dockerfile文件一定要在Linux创建,windows会默认结尾带 /r 会导致生成的镜像文件无法启动,且报错十分诡异。

镜像启动查看日志可以通过 docker logs [容器ID] 来查看

由于是启动jar包,docker logs 显示的报错是:

docker logs [容器id]
unable to access jarfile

会让人错误的认为是jar相关命令出问题,忽略了文件类型的原因。

可以diff Linux和Windows创建的两个文件,或者 file 文件查看文件属性。

Linux 上的文件:ASCII text

Windows上的文件:ASCII text, with CRLF line terminators.

Docker save保存镜像

表现:Docker-镜像导入后repository和tag名称都为none的解决办法

[root@owy-bd-c16-18 patrol]# docker images

REPOSITORY TAG IMAGE ID CREATED SIZE

nginx latest ea335eea17ab 7 days ago 141MB

43ce62428b8c 5 months ago 185MB

原因:docker save镜像时未指明 和。

docker save -o .tar(会导致载入镜像后名字标签都为)

解决办法:

正确的导出方式:docker save : -o .tar

补救方法通过tag的方法增加名字标签:

docker tag : []

Docker常用操作命令

停止容器

docker stop [容器ID]

删除容器

docker rm [容器ID]

查看所有容器

docker images

删除镜像

docker rmi [镜像ID]

;