0、查看docker 镜像

docker images  查看docker内的镜像

docker ps          查看docker运行的镜像

1、打包与运行新镜像

首先,将当前运行中的,已经自定义修改之后的容器保存为新的镜像。

docker commit ce11ed87f21f web_servers:2.0
例如镜像名叫:web_servers

执行打包命令:将镜像web_servers 通过save打包命令,以为.tar格式保存在路径/home下。

docker save web_servers:2.0 -o /home/web_servers.tar
打包命令执行完成之后,如果打包的镜像文件占用空间比较大,可以用操作系统的tar -zcvf打包压缩命令,将该镜像包再进行一次压缩。

OK,致此,容器打包完成。

***************

这样就可以将该打包的容器,传输到其他服务器,直接运行启动。

例如,将该镜像文件传输到另一台服务器上,前提是目标服务器上已安装docker环境;

docker load < db.tar

docker load < web_servers.tar
用docker images 命令查看镜像是否导入成功。

首先启动运行数据库容器:

docker run -d -p 5432:5432 -e POSTGRES_USER=odoo -e POSTGRES_PASSWORD=实际密码****** -e POSTGRES_DB=alsv --name alsv_db db:10.6
启动运行web_servers.tar应用容器:(注意端口映射,如果需要共享操作系统本地路径,注意容器卷映射)

方式一:

共享系统存储路径:docker run -it -d --name web_servers -p 8088:8088 web_servers:2.0
方式二:

指定存储路径:(将系统的/home/test/映射到容器内部的/mnt/ )

docker run -it --name web_servers -v /home/test/:/mnt/ -p 8088:8088 web_servers:2.0 /bin/bash
没有异常的话,查看运行状态:

docker ps

2、开启、关闭docker镜像

docker start  XXXXX

docker stop  XXXXX

docker restart  XXXXX

3、docker与系统 copy文件/目录

需求 
宿主机某一文件/目录->>容器内部 docker cp 需要拷贝的文件或目录 容器名称:容器目录
容器内部某一文件/目录->>宿主机 docker cp 容器名称:容器内目录/文件 宿主机目录/文件
docker cp 容器名称:容器内目录/文件 宿主机目录和文件

4、进入docker镜像

docker exec -it XXX(镜像名称) bash

attach和exec的区别

1)attach直接进入容器启动的终端,不会启动新的进程;

2)exec可以在容器中打开新的终端,也可以启动新的进程;

3)如果想查看容器启动时的命令可以用attach,其他的全部使用exec;

 

5、镜像的导入导出

  • 若是只想备份images,使用save、load即可
  • 若是在启动容器后,容器内容有变化,需要备份,则使用export、import

save 命令 
docker save [options] images [images...]
示例
docker save -o nginx.tar nginx: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

 

 posted on 2021-01-15 14:32  xibuhaohao  阅读(179)  评论(0)    收藏  举报