一、镜像操作

  • 列出镜像

$sudo docker images
  • 从dockerhub检索image

$docker search image_name
  • 下载image

$docker pull image_name
#从指定位置下载
$docker pull hub.c.163.com/library/centos:latest #从私人仓库下载
$docker pull 127.0.0.1:5000/centos:latest
 
  • 删除一个或者多个镜像;


$docker rmi image_name 
  • 显示一个镜像的历史;

$docker history image_name
  • 发布docker镜像

$docker push new_image_name
#发布到本地仓库(前提是已经搭建好了registry)
$docker push 127.0.0.1:5000/new_image_name:1.0

  ps:要发布到私有Registry中的镜像,在镜像命名中需要带上Registry的域名(如果非80端口,同时需要带上端口号)比如:

$docker push dockerhub.yourdomain.com:443/hello.demo.kdemo:v1.0
  • 修改镜像名:
docker tag imageid name:tag 

上传到本地仓库,常需要修改tag,使之与仓库ip保持一致,eg:

docker tag imageid 127.0.0.1:5000/name:tag 

二、对容器的操作:

  • 启动容器:
docker run -d -p 58080:8080 --name javaweb lin_javaweb:0.1
  • 查看运行的容器
docker ps
  • 查看已退出的容器
docker ps -a
  • 进入容器内部:
#前提是容器已经run
docker exec -it id /bin/bash (or /bin/sh)
# 从容器内部跳出
exit
  • run docker并且挂载:
docker run -i -t -v /usr/local/test_docker/:/mnt/software/ 85364ad506e1 /bin/bash

docker run -d -p 58080:8080 -v /usr/local/tomcat/webapps:/usr/data/tomcat/webapps –net=host  --name javaweb lin_javaweb:0.1

#--net=host 允许连接外部网络

  • 停止运行的容器:
docker stop 容器名或容器ID
  • 恢复运行
docker start 容器ID 
  • 提交已退出的容器为镜像
docker commit 容器ID aoct/apache2:0.1
  • 查看容器内部详情细节:
$docker inspect <id/container_name>
  • 显示一个运行的容器里面的进程信息
$docker top Name/ID  

三、容器批量操作

1、停用全部运行中的容器:

docker stop $(docker ps -q)

2、删除全部容器:

docker rm $(docker ps -aq)

3、一条命令实现停用并删除容器:

docker stop $(docker ps -q) & docker rm $(docker ps -aq)

四、镜像导入导出

  • 导出docker:
docker save -o java8.tar lwieske/java-8
  • 导入docker:
docker load < java8.tar

五、宿主与容器之间文件的拷贝

  • 从容器内拷贝文件到主机上:
docker cp <containerId>:/file/path/within/container /host/path/target
  • 从主机上拷贝文件到容器内:

用-v挂载主机数据卷到容器内方式进行拷贝。

docker run -v /path/to/hostdir:/mnt $container

#在容器内拷贝

cp /mnt/sourcefile /path/to/destfile

Docker系列(二)镜像下载、操作容器、镜像导入导出等操作的更多相关文章

  1. 配置toad进行导入导出数据库操作

    最近需要对oracle进行导入导出操作,于是研究使用toad进行导入导出oracle数据库操作,现稍作记录. oracle的导入导出不管是否使用toad还是pl/sql工具进行操作,实际上最终都是通过 ...

  2. Docker 系列二(操作镜像).

    一.镜像管理 1.拉取镜像 docker pull [选项] [Docker Registry 地址[:端口号]/]仓库名[:标签] -- Docker 镜像仓库地址 :一般是 域名或者IP[:端口号 ...

  3. docker使(二)—发布node应用镜像和容器

    应用在本地是已经ok的了,现在将node应用放进docker容器里面 获取node镜像 docker pull node 编写Dokerfile # 根据node镜像开始创建新的镜像(可以加上:tag ...

  4. docker镜像 - 下载、创建镜像和导入导出镜像

    实验环境 CentOS 7.5 安装并启动docker yum install -y docker systemctl start docker 镜像 安装镜像 docker pull [OPTION ...

  5. 8天入门docker系列 —— 第六天 搭建自己的私有镜像仓库Registry

    这一篇我们来聊聊私有仓库的搭建,其实不管你是通过docker build还是compose的方式进行构建,最终还是要将生成好的镜像push到远程的仓库中,这样多个 平台可以方便的获取你registry ...

  6. Docker(二):理解容器编排工具Kubernetes内部工作原理

    一.Kubernetes是什么 要说到Docker就不得不说说Kubernetes.当Docker容器在微服务的环境下数量一多,那么统一的,自动化的管理自然少不了.而Kubernetes就是一个这样的 ...

  7. Docker系列(二):Docker基础命令

    docker的部署安装(Linux kernel至少3.8以上): yum install docker docker1.8安装:(下面 是两个命令) # cat >/etc/yum.repos ...

  8. Docker系列二: docker常用命令总结

    https://docs.docker.com/reference/  官方命令总结地址 容器生命周期管理 1.docker run 创建一个新的容器并运行一个命令 docker run [optio ...

  9. docker容器的导入导出

    导出容器docker export 导出容器快照到本地文件$ sudo docker ps -aCONTAINER ID        IMAGE               COMMAND      ...

随机推荐

  1. Java泛型之自限定类型

    在<Java编程思想>中关于泛型的讲解中,提到了自限定类型: class SelfBounded<T extends SelfBounded<T>> 作者说道: 这 ...

  2. 初识Hibernate框架,进行简单的增删改查操作

    Hibernate的优势 优秀的Java 持久化层解决方案  (DAO) 主流的对象—关系映射工具产品 简化了JDBC 繁琐的编码 将数据库的连接信息都存放在配置文件 自己的ORM框架 一定要手动实现 ...

  3. java 两行代码解析json文件

    public void JsonRead() throws IOException{ String str = FileUtils.readFileToString(new File("D: ...

  4. vue生命周期和钩子函数

    new Vue 创建vue实例 init events & liftcycle 开始初始化 beforeCreate 组件刚被创建,组件属性计算之前,如data属性等 init injecti ...

  5. python—DAY1

    # user = "123"# possword = "111"# count = 0## while count < 3:# user_name = i ...

  6. ASP.NET Web API相关

    接收移动端上传的图片,示例代码: [HttpPost] [ApiSecurityFilter] public IHttpActionResult UploadImg() { string imgs = ...

  7. React native 中 SectionList用法

    一.代码 import React, { Component } from 'react'; import { AppRegistry, View, Text, SectionList, } from ...

  8. 处理文件中的" M-BM- "特殊符号

    有时为了方便,会在Excel中进行代码拼装,比如说是建表SQL语句,但是在复制的代码过程中可能会带入不可见字符,造成代码无法运行. 本次代码中就需要了不可见的" M-BM- " 问 ...

  9. spring boot 项目部署在阿里云上

    装jdk, 然后 nohup java -jar xxxx.jar> system.log 2>&1 & lsof -i:9999 kill -9 1234

  10. Vue基础之内部指令(上)

    v-if.v-else-if.v-else以及v-show 条件指令v-if.v-else-if.v-else 类似于JavaScript里的if.else-if.else,这三个指令根据表达式的值对 ...