一 docker服务端和客户端

declare -x DOCKER_HOST="192.168.2.162

export DOCKER_HOST=192.168.2.162

docker -H tcp://192.168.2.162:2375 images

二 docker daemon配置

cat /etc/sysconfig/docker

OPTIONS='--selinux-enabled --log-driver=journald --signature-verification=false -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock'

三 docker镜像

docker pull 镜像名

docker search 镜像名

docker images 列出镜像列表

docker image ls 等同于 docker images

docker rmi image_id 删除镜像

docker save 保存镜像

docker load 装载镜像

四 docker容器管理命令

docker rm `docker ps -a -q`查看所有容器

docker run -d -p 8888:8888 -p 55555:55555 --name btsync ctlc/btsync 创建容器

docker create -it ubuntu:latest 创建容器

docker start container

启动容器

docker inspect container 获取容器的详细信息

docker stop container 停止容器

docker rm container 删除容器

docker network ls 列出docker网络

docker run -it --rm ubuntu:16.04 /bin/bash rm 的意思是容器退出随之将其删除

五 进入容器

1.docker attach

多个窗口同时attach到同一个容器的时候,所有窗口都会同步显示。远程演示的时候可以使用。

2. docker exec -it container /bin/bash

3.nsenter工具

PID = $(docker inspect --format "{{.State.Pid}}" )

nsenter --target $PID --mount --uts --pic --net --pid

六 导入和导出容器

docker export container >test_for_export.tar

cat test_for_export.tar |docker import - test/ubuntu:v1.0

容器是从镜像创建的应用运行实例。镜像自身是只读的。容器从镜像启动的时候,docker会在镜像的最上层创建一个可写层,镜像本身将保持不变。

七 docker数据卷

在容器内创建一个数据卷

docker run -d -P --name web -v /webapp training/webapp python app.py

使用training/webapp镜像创建一个web容器,并创建一个数据卷挂载到容器的/webapp目录

挂载一个主机目录作为数据卷

docker run -d -P --name web -v /src/webapp:/opt/webapp training/webapp python app.py

加载主机的/src/webapp目录到容器的/opt/webapp目录

挂载一个本地主机文件作为数据卷

docker run --rm -it -v /root/.bash_history:/.bash_history ubuntu /bin/bash

这样就可以记录在容器输入过的命令历史了

数据卷容器

docker -ti -v /dbdata --name dbdata ubuntu

然后可以在其他容器中使用--volumes-from 来挂载dbdata容器中的数据卷

如创建db1和db2容器,并从dbdata容器挂载数据卷

docker run -it --volumes-from dbdata --name db1 ubuntu

docker run -it --volumes-from dbdata --name db2 ubuntu

在dbdata容器中创建一个test文件

在db1容器中可以查看到

可以多次使用 --volumes-from 参数来从多个容器挂载多个数据卷,还可以从其他已经挂载的容器卷的容器来挂载数据卷

docker run -d --name db3 --volumes-from db1 training/postgres

利用数据卷容器来迁移数据

备份

docker run --volumes-from dbdata -v $(pwd):/backup --name worker ubuntu

tar cvf /backup/backup.tar /dbdata

首先利用ubuntu镜像创建一个容器worker 使用--volumes-from dbdata参数来让worker容器挂载dbdata容器的数据卷即dbdata数据卷

使用-v $(pwd):/backup 参数来挂载本地的当前目录到worker的容器/backup目录

容器woker启动后 使用tar cvf /backup/bakcup.tar /dbdata命令来讲/dbdata下内容备份为容器的 /backup/backup.tar 即宿主主机当前目录下的backup.tar

恢复

如果要恢复数据到一个容器,可以按照下面操作

首先创建一个带有数据卷的容器dbdata2

docker run -v /dbdata --name dbdata2 ubuntu /bin/bash

然后创建和一个新的容器,挂载dbdata2的容器。并使untar解压备份文件到所挂载的容器卷中

docker run --volumes-from dbdata2 -v $(pwd):/backup busybox

tar xvf /backup/backup.tar

docker export_docker使用简介相关推荐

  1. Docker知识3:Docker的体系简介

    摘要: 本文是关于docker的专题讨论,作者用一组文档尽可能保证完整地阐述Docker到底是啥?如何使用?docker的使用范围等.相关的其它文章是: Docker知识1:Docker-hub简介 ...

  2. Docker Toolbox:Docker Toolbox的简介、安装、使用方法之详细攻略

    Docker Toolbox:Docker Toolbox的简介.安装.使用方法之详细攻略 目录 Docker Toolbox的简介 0.优缺点 1.工具箱包括以下Docker工具 Docker To ...

  3. docker教程_1 简介和安装

    https://gitee.com/fakerlove/docker 文章目录 Docker 教程 1. 简介 1.1 概念 1.2 优点 1.3 安装 环境准备 安装 Docker 教程 1. 简介 ...

  4. Docker容器---dockerfile简介

    Docker容器---dockerfile简介 一.dockerfile概念 1.dockerfile介绍 2.基于dockerfile创建 3.docker镜像加载原理 二.镜像的创建 1.基于现有 ...

  5. 《docker基础篇:8.Docker常规安装简介》包括:docker常规安装总体步骤、安装tomcat、安装mysql、安装redis

    文章目录 8.Docker常规安装简介 8.1 docker常规安装总体步骤 8.2安装tomcat 8.3 安装mysql 8.3.1 docker hub上面查找mysql镜像 8.3.2 从do ...

  6. Docker 私服Registry简介与使用Docker-Compose安装Registry

    场景 Docker-Compose简介与Ubuntu Server 上安装Compose: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/deta ...

  7. 自动化集成:Docker容器入门简介

    前言:该系列文章,围绕持续集成:Jenkins+Docker+K8S相关组件,实现自动化管理源码编译.打包.镜像构建.部署等操作:本篇文章主要描述Docker基础用法. 一.Docker简介 1.基础 ...

  8. docker、k8s 简介

    2010年,几个搞IT的年轻人,在美国旧金山成立了一家名叫"dotCloud"的公司. 这家公司主要提供基于PaaS的云计算技术服务.具体来说,是和LXC有关的容器技术. LXC, ...

  9. docker export_docker构建python3.7镜像

    安装 Docker Engine-Community 使用 Docker 仓库进行安装 在新主机上首次安装 Docker Engine-Community 之前,需要设置 Docker 仓库.之后,您 ...

最新文章

  1. [转]100个常用的linux命令
  2. flutter_web 实战之文章列表与详情
  3. C语言再学习-- readelf、objdump、nm使用详解
  4. css样式变 及实际用法
  5. Segmentaion标签的三种表示:poly、mask、rle
  6. mysql -- 死锁
  7. KMP算法 next数组 nextval数组
  8. python 批量下载地理空间数据云
  9. 未授权访问漏洞测试方法及修复方案
  10. apache - mod_rewrite配置指令RewriteBase
  11. 《深入理解Bootstrap》勘误
  12. 2018新年计划-雄起
  13. Katalon Recorder安装及使用
  14. Chrome 浏览器调试的日常使用总结
  15. udt4 VS udt gateway
  16. Proteus 创建可以仿真的元件 - Proteus建模技术
  17. 树莓派4B启动失败之原因排查及解决方案
  18. linux uart寄存器 代替 printk,Linux驱动学习之设备树(设备树下的LED驱动实验),...
  19. 白名单认证 solidity 代码
  20. hdu5445 Food Problem(背包)

热门文章

  1. C - Mr. Panda and Strips Gym - 101194C(思维//尺取//2016 icpc china final)
  2. cf1523C. Compression and Expansion
  3. cf1553D. Backspace
  4. HAPPY_TOGETHER_WEEK15_ENJOY
  5. [JSOI2007]字符加密
  6. P5405-[CTS2019]氪金手游【树形dp,容斥,数学期望】
  7. 牛客练习赛84F-牛客推荐系统开发之下班【莫比乌斯反演,杜教筛】
  8. CF280C-Game on Tree【数学期望】
  9. P6348-[PA2011]Journeys【线段树优化建图,最短路】
  10. P4047-[JSOI2010]部落划分【最小生成树】