docker使用笔记

最近听说docker很火,这两天学习了一下。本人实用的是mac os操作系统。

有关什么是docker、docker的好处以及安装,请参考:http://tech.uc.cn/?p=2726

一、基本命令

1、安装ubuntu虚拟机

docker pull ubuntu

2、查看镜像

@~ $ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
ubuntu              latest              9bd07e480c5b        9 days ago          192.7 MB

3、登录ubuntu

@~ $ docker run -a stdin -a stdout -a stderr -i -t ubuntu /bin/bash
[email protected]:/# uname -a
Linux ccaffb725895 3.16.4-tinycore64 #1 SMP Thu Oct 23 16:14:24 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
[email protected]:/# 

下面解释一下上面的命令:docker run -i -t <image> /bin/bash 使用image创建container并进入交互模式, login shell是/bin/bash

4、查看container。退出ubuntu之后,查看

[email protected]:/# exit
exit
@~ $ docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                      PORTS               NAMES
ccaffb725895        ubuntu:latest       "/bin/bash"         3 minutes ago       Exited (0) 15 seconds ago                       trusting_bohr       

二、保存container

如果我以后登录ubuntu都输入上面这些命令太繁琐了,需要锁定container

1、启动container

@~ $ docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                      PORTS               NAMES
ccaffb725895        ubuntu:latest       "/bin/bash"         3 minutes ago       Exited (0) 15 seconds ago                       trusting_bohr
@~ $ docker start ccaffb725895
ccaffb725895

2、attach

@~ $ docker start ccaffb725895
ccaffb725895
@~ $ docker attach ccaffb725895
[email protected]:/#
[email protected]:/# uname -a
Linux ccaffb725895 3.16.4-tinycore64 #1 SMP Thu Oct 23 16:14:24 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
[email protected]:/# 

3、保存镜像,commit命令

@~ $ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
ubuntu              latest              9bd07e480c5b        9 days ago          192.7 MB
@~ $ docker commit -a "liqiu <[email protected]>" ccaffb725895 ubuntu:ssh-ubuntu
5d2941e8c0bf7fe988604f11d043a03331ec83536ce09f841e760d51156b6865
@~ $ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED              VIRTUAL SIZE
ubuntu              ssh-ubuntu          5d2941e8c0bf        About a minute ago   192.7 MB
ubuntu              latest              9bd07e480c5b        9 days ago           192.7 MB

三、删除container

@~ $ docker stop ccaffb725895
ccaffb725895
@~ $ docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                       PORTS               NAMES
ccaffb725895        ubuntu:latest       "/bin/bash"         16 minutes ago      Exited (127) 5 minutes ago                       trusting_bohr
@~ $ docker rm ccaffb725895
ccaffb725895
@~ $ docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
@

四、恢复

一切恢复平静之后,思考一个问题,我在虚拟机安装了一个curl,过几天我再启动它curl还存在吗?

1、进入ubuntu,安装curl

@~ $ docker run -a stdin -a stdout -a stderr -i -t ubuntu /bin/bash
[email protected]:/# sudo apt-install curl

2、退出之后,保存镜像

@~ $ docker commit -a "liqiu <[email protected]>" 0efb23b52565 ubuntu:curl-ubuntu
aac468ce18c883bc71e849028a1718e57d80d3c6231840e6b1fdb4d66354bfe6
@~ $ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED              VIRTUAL SIZE
ubuntu              curl-ubuntu         aac468ce18c8        About a minute ago   204.1 MB
ubuntu              latest              9bd07e480c5b        9 days ago           192.7 MB

3、重新进入镜像

@~ $ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED              VIRTUAL SIZE
ubuntu              curl-ubuntu         aac468ce18c8        About a minute ago   204.1 MB
ubuntu              latest              9bd07e480c5b        9 days ago           192.7 MB
@~ $ docker run -a stdin -a stdout -a stderr -i -t aac468ce18c8 /bin/bash
root[email protected]:/# curl www.baidu.com
<!DOCTYPE html>
......
......
......

完活!~

时间: 2024-10-12 21:19:09

docker使用笔记的相关文章

Docker 学习笔记【1】Docker 相关概念,基本操作

计划:Docker 学习笔记[2] Docker 基础操作实操记录,Docker仓库.数据卷,网络基础学习---40 注:所有操作在root下执行 --1--概念: 1.Docker镜像: 镜像就是一个只读的模板,用于创建docker容器. Docker提供了简单的机制创建或者更新现有镜像,也可以从别处拿来现成镜像直接使用. 2.Docker容器: 可以认为是精简版的linux运行环境包含 [root权限,进程空间,用户空间,网络空间等]和应用程序 另外:镜像是只读的,容器基于镜像启动后创建一层

Docker 学习笔记【2】 Docker 基础操作实,Docker仓库、数据卷,网络基础学习

Docker 学习笔记[3] Docker 仓库实操,创建私有仓库,实操数据卷.数据卷容器,实操 网络基础  ---------高级网络配置和部分实战案例学习 ============================================================= Docker 学习笔记[1]Docker 相关概念,基本操作--------实操记录开始 ============================================================= 被

Docker学习笔记(一)什么是Docker

Docker学习笔记(一)什么是Docker Docker:容器技术是虚拟化技术的一种,是操作系统的虚拟化. 传统硬件虚拟化:虚拟硬件,事先分配资源,在虚拟的硬件上安装操作系统,虚拟机启动起来以后资源就会被完全占用. 操作系统虚拟化:docker是操作系统虚拟化,借助操作系统内核特性(命名空间.cgroups)实现,不需要模拟硬件行为,不需要安装操作系统. 优点: 硬件虚拟化需要安装操作系统占用空间大. 硬件虚拟化需要模拟硬件系统行为,内存和cpu消耗更大. 缺点: 容器进程崩溃,可能影响宿主机

Docker学习笔记(四)走进docker的世界

Docker学习笔记(四)走进docker的世界 一个容器实际上是运行在宿主机上的一个进程. 只不过在启动这个进程之前进行了一些特殊处理,让这个容器进入了一个全新的虚拟环境,与宿主机的环境分开, 所以这个进程及其子进程认为自己运行在一个独立的世界里面. #查看进程 sudo docker run -d cyf:sshd /usr/sbin sshd -D ps axf 可以看到在宿主机里面的5948这个sshd进程 下面进入docker容器查看 sudo docker-enter.sh 6867

docker学习笔记1 -- 安装和配置

技术资料 docker中文官网:http://www.docker.org.cn/ 中文入门课程:http://www.docker.org.cn/book/docker.html docker学习笔记:http://www.open-open.com/lib/view/open1423703640748.html 深入浅出docker:http://www.infoq.com/cn/articles/docker-core-technology-preview 安装 参考:http://www

个人--Docker学习笔记

Docker学习笔记 docker让应用分发,测试,部署变得前所未有的高效和轻松 docker利用率很高,一台主机上可以同时运行数千个docker容器 docker容器除了运行其中应用外,基本不消耗额外的系统资源 docker容器不需要额外的hypervisor支持,是内核级的虚拟化 docker容器几乎可以在任意平台上运行 docker的三个基本概念 镜像(image) 容器(container) 仓库(repository) 以上是docker的整个生命周期 镜像的作用是用来创建容器的.镜像

docker学习笔记(2)---Dockerfile

在docker学习笔记(1)中,我们提到了通过commit 的命令来提交新的image,下面我们来通过Dockerfile文件来生成image,而且使用Dockerfile,很方便移植. 一.Dockerfile中几个常用的指令: (1)FROM 格式: FROM <image> 或者 FROM <image>:<tag> (2)MAINTAINER 格式: MAINTAINER <name> 说明:设置生成image的作者 (3)RUN 格式: 使用she

Docker学习笔记——镜像、容器、仓库

Docker三个基本概念 镜像(image) 容器(container) 仓库(Repository) 镜像(image) 搜索镜像 docker search nginx 获取镜像 docker pull nginx 指定Registry地址和具体的仓库名下载镜像,没有指定Registry地址,默认从Docker Hub上下载 docker pull jwilder/nginx-proxy 查看镜像 docker images  REPOSITORY          TAG         

docker~学习笔记索引

使用docker也有段时间了,写了不少文章与总结,下面把它整理个目录出来,方便大家去学习与检索! docker~学习笔记索引 docker~linux下的部署和基本命令(2017-04-07 22:47) docker~docker-machine的介绍(2017-04-12 12:02) docker~使用阿里加速器安centos(2017-04-13 10:16) docker~大叔对术语的解释(2017-06-18 19:19) docker~Dockerfile优化程序的部署(2017-

Docker 学习笔记【3】 Docker 仓库、数据卷、数据卷容器,网络基础实操。高级网络配置学习

Docker 学习笔记[4] 高级网络配置实操,实战案例实验 =========================================================================== Docker 学习笔记[2] Docker 仓库实操,创建私有仓库,实操数据卷.数据卷容器,记录开始 =========================================================================== 被格式化的脚本内容: #开头代表