docker速查

Centos7 安装 Docker

阿里镜像安装

官方repo地址被墙,所以我用阿里

# step 1: 安装必要的一些系统工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# Step 2: 添加软件源信息
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# Step 3: 更新并安装 Docker-CE
sudo yum makecache fast
sudo yum -y install docker-ce
# Step 4: 开启Docker服务
sudo systemctl start docker

加速

国内镜像慢,所以我用阿里

sudo mkdir -p /etc/docker
sudo vi /etc/docker/daemon.json
{
  "registry-mirrors": ["https://xxxxxxx.mirror.aliyuncs.com"]
}
sudo systemctl daemon-reload
sudo systemctl restart docker

命令速查表

常用度排序

镜像操作

功能 命令
拉取镜像 docker pull [镜像名称:版本]
镜像列表 docker images
删除镜像 docker rmi [镜像名称:版本]
镜像操作记录 docker history [镜像名称:版本]
给镜像设置新的仓库 docker tag [镜像名称:版本] [新镜像名称:新版本]
查看镜像详细 docker inspect [镜像名称:版本]
搜索镜像 docker search [关键字]
仓库登录 docker login

docker tag 指令得到了一个新的,和原来的镜像一模一样的镜像。后续文谈到私仓非常有用。

容器操作

功能 命令
启动容器并进入 docker run -ti --name [容器名称] [镜像名称:版本] bash
容器列表 docker ps -a
容器提交为新的镜像 docker commit [容器名称] my_image:v1.0
容器后台运行 docker run -d --name [容器名称] [镜像名称:版本] bash -c "echo hello world"
容器结束后自动删除 docker run --rm --name [容器名称] [镜像名称:版本] bash -c "echo hello world"
删除容器 docker rm [容器名称]
进入容器 exec docker exec -ti [容器名称] bash
进入容器 attach docker attach [容器名称]
停止容器 docker stop [容器名称]
Docker 日志 docker logs [容器名称]
查看容器详细 docker inspect [容器名称]
查看容器最近一个进程 docker top [容器名称]
继续运行被停止的容器 docker restart [容器名称]
暂停一个容器进程 docker pause [容器名称]
取消暂停 docker unpause [容器名称]
终止容器 docker kill [容器名称]
端口映射 docker run -ti --name [容器名称] -p 8080:80 [镜像名称:版本] bash
容器互联 docker run -ti --name [容器名称] --link [被互联容器名称]:[容器内名称] net:v1.0 bash
复制容器文件到宿主 docker cp [容器名称]:[容器内目录] .
  • execattach 区别

在 exec 里面执行 exit 命令,你只是关掉了 exec 命令新开的进程,而主进程依旧在运行,所以容器并不会停止
在 attach 里面运行 exit 命令,你实际是终止了主进程,所以容器也就随之被停止了

  • -p 配置

-p hostPort:containerPort 映射所有 IP 地址上的指定端口到容器内部
-p ip:hostPort:containerPort 映射指定 IP 地址上的指定端口到容器内部
-p ip::containerPort 映射指定 IP 地址上的任意端口到容器内部

内存限制

参数 简介
-m, - -memory 内存限制,格式:数字+单位,单位可以是b, k, m, g,最小4M
-- -memory-swap 内存和交换空间总大小限制,注意:必须比-m参数大

CPU限制

参数 简介
-- -cpuset-cpus="" 允许使用的CPU集
-c,- -cpu-shares=0 CPU共享权值
-- -cpu-quota=0 限制CPU CFS配额,必须不小于1ms,即>=1000
cpu-period=0 限制CPU CFS调度周期,范围是100ms~1s,即[1000, 1000000]
sudo docker run -ti --cpuset-cpus="1,3" --name cpuset [镜像名称:版本] bash

比如下面的指令指定容器进程可以在 CPU1 和 CPU3 上运行

数据卷

功能 命令
创建一个卷 docker run -ti --name [容器名称] -v /[数据卷名称] [镜像名称:版本] bash
删除一个数据卷 docker rm -v [数据卷名称]
挂载宿主目录 docker run -ti --name [容器名称] -v [宿主目录]:[容器内目录] [镜像名称:版本] bash
数据卷容器 docker run -ti -d -v /[数据卷名称] --name [数据卷容器名称] [镜像名称:版本]
使用数据卷容器 docker run -ti --volumes-from [数据卷容器名称] --name [新容器名称] [镜像名称:版本] bash
清除所有 docker volume prune
备份数据卷 1 - 建立容器 docker run -it --name vol_simple -v /data ubuntu /bin/bash
备份数据卷 2 - 备份 docker run --rm --vloumes-from vol_simple -v$(pwd):/backup ubuntu tar cvf /backup/data.tar /data
恢复数据卷 1 - 建立目标容器 docker run -it --name vol_bck -v /data ubuntu /bin/bash
恢复数据卷 2 - 解压 docker run --rm --volumes-from vol_bck -v $(pwd):/backup ubuntu tar xvf /backup/data.tar -C /

备份数据卷: 指令启动了一个临时的容器,这个容器挂载了两个volume,第一个volume与要备份的volume共享,第二个volume将宿主机的当前目录挂载到容器的/backup下。容器运行后将要备份的内容(/data文件夹)备份到/backup/data.tar,然后删除容器,备份后的data.tar就留在了当前目录。

恢复数据卷: 首先运行了一个新容器作为数据恢复的目标。第二行指令启动了一个临时容器,这个容器挂载了两个volume,第一个volume与要恢复的volume共享,第二个将宿主机的当前目录挂载到容器的/backup下。由于之前备份的data.tar在当前目录下,那么它在容器中的/backup也能访问到,容器启动后将这个存档文件中的/data恢复到跟目录下,然后删除容器,恢复后的数据在vol_bck的volume中了。

参考

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,117评论 4 360
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 66,963评论 1 290
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 107,897评论 0 240
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,805评论 0 203
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,208评论 3 286
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,535评论 1 216
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,797评论 2 311
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,493评论 0 197
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,215评论 1 241
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,477评论 2 244
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,988评论 1 258
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,325评论 2 252
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,971评论 3 235
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,055评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,807评论 0 194
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,544评论 2 271
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,455评论 2 266

推荐阅读更多精彩内容

  • 五、Docker 端口映射 无论如何,这些 ip 是基于本地系统的并且容器的端口非本地主机是访问不到的。此外,除了...
    R_X阅读 1,670评论 0 7
  • 0x01 核心概念 Docker镜像类似于虚拟机镜像,可以理解为一个面向Docker引擎的只读模板,包含了文件系统...
    闲云逸心阅读 4,601评论 0 9
  • 一、概述 Docker is the world’s leading software container pla...
    凛_冬_将_至阅读 274评论 0 0
  • 一,小王对于容器的困惑 小王刚开始学习Docker的时候,找资料在网上看到最多的是Docker的好处。比如: 1、...
    架构师小秘圈阅读 8,378评论 0 24
  • 姓名:程鹏 公司:宁波谊久国际物流有限公司 宁波第504期 努力三组:付出不亚于任何人的努力 《六项精进 0 遍 ...
    鹏程万里_d508阅读 91评论 0 0