服务热线
135-6963-3175
Docker镜像常用命令
本地主机的镜像列表
docker image
创建并运行一个镜像容器
docker run -t -i mysql:latest /bin/bash
拉取镜像
docker pull mysql:latest
查找镜像
docker search mysql
删除镜像
docker rmi mysql:latest
创建镜像
当从docker仓库下载的镜像不能满足我们的需求时,可以通过下面方式对镜像进行更改。
更改已创建的镜像,并提交。
使用Dockerfile指令创建一个新的镜像
例:
方式一:
首先创建并运行一个镜像
docker run -ti mysql:latest /bin/bash
[root@localhost ~]# docker exec -it 5ab /bin/bash #5ab为容器id简写 root@5abf309c553b:/# ls bin boot dev docker-entrypoint-initdb.d entrypoint.sh etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var root@5abf309c553b:/# mkdir 1json root@5abf309c553b:/# ls 1json bin boot dev docker-entrypoint-initdb.d entrypoint.sh etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var root@5abf309c553b:/# exit exit
此时通过命令docker commit -m="has update" -a="1json" containerId my/mysql:v1
参数说明:-m:描述信息
-a: 指定镜像作者
containerId:容器id
my/mysql:v1:指定要创建的目标镜像名
然后我们通过docker images命令查看我们的镜像
[root@localhost ~]# docker commit -m 'mkdir 1json' -a='1json' 5ab my/mysql:v1 sha256:b53c20aab1d880b374aa01137daada7ee682bfe8811bf3343c9e1bba35c96260 [root@localhost ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE my/mysql v1 b53c20aab1d8 10 seconds ago 544MB mysql latest 0d64f46acfd1 2 weeks ago 544MB hello-world latest bf756fb1ae65 7 months ago 13.3kB
方式二:
构建镜像文件Dockerfile文件(语法参考Dockerfile语法章节)
cat Dockerfile
FROM centos:7.5
ENV MYSQL_USER root
ENV MYSQL_PASS 1json
EXPOSE 3306
然后在当前目录执行docker build -t my/mysql:v2 ./
./为Dockerfile所在的目录
-t指定目标镜像名
设置镜像标签
docker tag imageId my/mysql:v3
docker images发现会新增一个为my/mysql:v3的镜像