docker笔记-docker-container

1
新建并启动
$ sudo docker run -t -i ubuntu:14.04 /bin/bash
-t 让Docker分配一个伪终端(pseudo-tty)并绑定到容器的标准输入上
-i 则让容器的标准输入保持打开
在交互模式下,用户可以通过所创建的终端来输入命令
更多的时候,需要让 Docker 容器在后台以守护态(Daemonized)形式运行。此时,可以通过添加 -d 参数来实现。
$ sudo docker run -idt ubuntu /bin/bash

启动之后的提示符中包含新容器的id
可以通过`docker start container-id`来启动已经停止的容器

2 查看容器实例列表
$ sudo docker ps
$ sudo docker ps -a

3 终止容器
$ docker stop container-id
删除容器
$ docker rm container-id

4 链接运行中的容器实例
$ docker attach container-id

$ nsenter --target $PID --mount --uts --ipc --net --pid
注:PID=$(docker inspect --format "{{ .State.Pid }}" <container>)

$ docker-enter container-id

5 导出导入容器

docker export 导出容器
$ sudo docker ps -a
CONTAINER ID IMAGE ***
7691a814370e ubuntu:14.04 ***
$ sudo docker export 7691a814370e > ubuntu.tar
这样将导出容器快照到本地文件

docker import 导入容器快照到镜像库
$ cat ubuntu.tar | sudo docker import - test/ubuntu:v1.0
$ sudo docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
test/ubuntu v1.0 9d37a6082e97 About a minute ago 171.3 MB
此外,也可以通过指定 URL 或者某个目录来导入,例如
$sudo docker import http://example.com/exampleimage.tgz example/imagerepo
*注:用户既可以使用 docker load 来导入镜像存储文件到本地镜像库,也可以使用 docker import 来导入一个容器快照到本地镜像库。
这两者的区别在于容器快照文件将丢弃所有的历史记录和元数据信息(即仅保存容器当时的快照状态),
而镜像存储文件将保存完整记录,体积也要大。此外,从容器快照文件导入时可以重新指定标签等元数据信息。

时间: 2024-12-11 17:49:03

docker笔记-docker-container的相关文章

Docker笔记——Docker安装及制作镜像

1 Docker安装本文中Docker运行环境为Ubuntu 14.04.1 LTS 3.13.0-32-generic x64参考:https://docs.docker.com/v1.11/engine/installation/linux/ubuntulinux/ 1.1 更新并安装apt-transport-https ca-certificates apt-get update && apt-get install apt-transport-https ca-certifica

Docker笔记三 Docker镜像制作

Docker笔记三 Docker镜像制作 1.Docker镜像制作方法: docker commit 保存当前container的状态到镜像,生成image. docker build 利用dockerfile自动化生成image. 2.制作方法 docker commit方式 #启动镜像名称为centos的一个容器(container)  [[email protected] ~]#docker run -it centos /bin/bash #在容器内安装httpd服务 [[email p

Docker笔记

简介 Docker 是 dotCloud 最近几个月刚宣布的开源引擎,旨在提供一种应用程序的自动化部署解决方案,简单的说就是,在 Linux 系统上迅速创建一个容器(类似虚拟机)并在容器上部署和运行应用程序,并通过配置文件可以轻松实现应用程序的自动化安装.部署和升级,非常方便.因为使用了容器,所以可以很方便的把生产环境和开发环境分开,互不影响,这是 docker 最普遍的一个玩法.更多的玩法还有大规模 web 应用.数据库部署.持续部署.集群.测试环境.面向服务的云计算.虚拟桌面 VDI 等等.

基于CentOS学习docker笔记

在nginx容器内编辑配置文件:将宿主的vi所在的目录挂载为容器的/bin docker run -it -v /usr/bin:/bin nginx /bin/sh #vi /etc/nginx/nginx.conf 批量删除容器: docker rm $(docker ps -a -q) [[email protected] ~]# docker ps -a CONTAINER ID        IMAGE               COMMAND                  CR

docker 笔记(基本概念、快速运行、自定义镜像)

1.docker docker是一个打包应用的工具 非常强大,能把操作系统也打在包里,进行无差别部署和运行. 所以docker也被认为是建立在操作系统上的虚拟机. 2.基本概念 镜像(image): 类似操作系统的镜像,包括一个完整可运行的系统,操作系统.基础组件.应用程序都可以打包在一个镜像中. 容器(container): 容器是某一个docker镜像的执行实例,可以启动.关闭.删除,可以理解成正一个linux系统,同一台机器上的多个container互相隔离. 3.简单使用 #安装dock

学习笔记--Docker

环境:redhat7.2 安装包: docker-engine-selinux-1.10.3-1.el7.centos.noarch docker-engine-1.10.3-1.el7.centos.x86_64 开启服务:docker docker version 查看docker版本 docker load -i rhel7.tar  倒入镜像 ctrl + p q 不中断退出 ctrl+d   退出并中断 docker ps -a  列出所有容器 docker run  -it --na

Docker笔记——搭建私有仓

Docker Hub当然是首选镜像仓,如果不想对所有人公开只想在局域网或公司内部使用,则有必要搭建私有仓来存储分发镜像. 搭建私有仓当然可以直接运行以下命令来创建个registry容器: docker run -d -p 5000:5000 --restart=always --name registry registry:2 一条命令已经很简洁了,这里如果只是写这么一句话就实在太没必要了,所以本文介绍如何一步步编译出registry镜像. registry官方路径:https://hub.do

[转载] docker笔记

原文: http://opskumu.github.io/docker.html docker的文章很多, 也不乏精品, 本文的好处在于作者不仅仅整理了自己对docker的理解, 还引用了很多经典的docker文献, 对于由浅入深的理解docker非常有帮助 一.Docker 简介 Docker 两个主要部件: Docker: 开源的容器虚拟化平台 Docker Hub: 用于分享.管理 Docker 容器的 Docker SaaS 平台 -- Docker Hub Docker 使用客户端-服

Docker实现退出container后保持继续运行的解决办法

现象: 运行一个image,例如ubuntu14.04: 1 docker run -it --rm ubuntu:14.04 bash 退出时: 执行Ctrl+D或者执行exit 查看线程: 1 docker ps 发现为空,说明没有正在运行的容器. 解决方法: 运行一个image: docker run -dit ubuntu:14.04 查看线程: 发现有一个线程,打开它: docker attach [CONTAINER ID或NAMES] 退出时如果想继续运行:按顺序按[ctrl+p]