修改docker默认存储位置编辑/etc/docker/daemon.json (如果不存在,请创建)并包括: { "data-root": "/new/path/to/docker-data" }编辑vi /etc/docker/daemon.json修改docker安装路径:{ "data-root": "/data/docker-data", "log-driver":"json-file", "log-opts": {"max-size":"100m", "max-file":"3"}, "insecure-registries":[ "192.168.8.233:1180" ] }重启dockersystemctl daemon-reload systemctl restart dockerdocker容器改成开机自启动docker update --restart=always xxxdocker安装JDK 获取JAVA镜像: 在终端客户端命令行输入以下命令,获取JAVA镜像。 docker pull java 默认是从Docker Hub官方的仓库中下载镜像的。如果没有指定对应的版本,默认会获取版本为latest的镜像。 查看docker镜像docker images启动docker JDK容器 启动容器 docker run -d -it --name jdk1.8 java 其中,–name后面的"jdk1.8"是为容器指定了一个别名,而最后的那个"java"指的是下载镜像时的名称。 查看运行中的容器docker ps查看容器中安装的jdk版本 使用容器的别名进入容器: docker attach jdk1.8 使用exec命令进入容器 【方式一】:通过容器别名进入容器: docker exec -it jdk1.8 bash 【方式二】:通过容器ID进入容器: docker exec -it id /bin/bash 进入容器后,输入 java -version 查看JDK版本信息 java -version退出容器exitDocker镜像的导入导出 save命令 docker save [options] images [images...] 示例 docker save -o oracle11g.tar oracle11g:latest 或 docker save > nginx.tar nginx:latest 其中-o和>表示输出到文件,nginx.tar为目标文件,nginx:latest是源镜像名(name:tag) load 命令 docker load [options] 示例 docker load -i nginx.tar 或 docker load < nginx.tar 其中-i和<表示从文件输入。会成功导入镜像及相关元数据,包括tag信息 export命令 docker export [options] container 示例 docker export -o nginx-test.tar nginx-test 其中-o表示输出到文件,nginx-test.tar为目标文件,nginx-test是源容器名(name) import命令 docker import [options] file|URL|- [REPOSITORY[:TAG]] 示例 docker import nginx-test.tar nginx:imp 或 cat nginx-test.tar | docker import - nginx:imp区别 export命令导出的tar文件略小于save命令导出的 export命令是从容器(container)中导出tar文件,而save命令则是从镜像(images)中导出 基于第二点,export导出的文件再import回去时,无法保留镜像所有历史(即每一层layer信息,不熟悉的可以去看Dockerfile),不能进行回滚操作;而save是依据镜像来的,所以导入时可以完整保留下每一层layer信息。如下图所示,nginx:latest是save导出load导入的,nginx:imp是export导出import导入的。 建议 可以依据具体使用场景来选择命令 若是只想备份images,使用save、load即可 若是在启动容器后,容器内容有变化,需要备份,则使用export、import