Docker 安装

还是看官方文档吧TAT
https://docs.docker.com/engine/getstarted/step_one/ 理解docker镜像和容器
镜像就是docker容器在运行的时候所使用的文件系统以及系统内核,以及其他参数。当然,docker镜像一般都会比实际的操作系统+软件要轻便的多。 容器就是一个镜像的运行实体。

Docker基础命令

# 查看docker的版本信息
$ docker version # 查看安装docker的信息
$ docker info # 查看本机Docker中存在哪些镜像
$ docker images # 检索image
$ docker search ubuntu:14.04 # 在docker中获取ubuntu镜像
$ docker pull ubuntu:14.04 # 显示一个镜像的历史
$ docker history debugman007/ubt14-hadoop-hbase:v1 # 列出一个容器里面被改变的文件或者目
$ docker diff debugman007/ubt14-hadoop-hbase:v1 # 从一个容器中取日志
$ docker logs debugman007/ubt14-hadoop-hbase:v1 # 显示一个运行的容器里面的进程信息
$ docker top debugman007/ubt14-hadoop-hbase:v1 # 从容器里面拷贝文件/目录到本地一个路径
$ docker cp ID:/container_path to_path # 列出当前所有正在运行的容器
$ docker ps # 列出所有的容器
$ docker ps -a # 列出最近一次启动的容器
$ docker ps -l # 查看容器的相关信息
$ docker inspect $CONTAINER_ID # 显示容器IP地址和端口号,如果输出是空的说明没有配置IP地址(不同的Docker容器可以通过此IP地址互相访问)
$ docker inspect --format='{{.NetworkSettings.IPAddress}}' $CONTAINER_ID # 保存对容器的修改
$ docker commit -m "xxxxx" -a "debugman007" 容器ID debugman007/ubt14-hadoop-hbase:v1 # 参数:
# -m参数用来来指定提交的说明信息;
# -a可以指定用户信息的;
# 容器ID代表的时容器的id;
# debugman007/ubt14-hadoop-hbase:v1指定目标镜像的用户名、仓库名和 tag 信息。 # 构建一个容器
$ docker build -t="debugman007/ubt14-hadoop-hbase:v1" . # 参数:
# -t为构建的镜像制定一个标签,便于记忆/索引等
# . 指定Dockerfile文件在当前目录下,也可以替换为一个具体的 Dockerfile 的路径。 # 在docker中运行ubuntu镜像
$ docker run <相关参数> <镜像 ID> <初始命令> # 守护模式启动
$ docker run -it ubuntu:14.04 # 交互模式启动
$ docker run -it ubuntu:14.04 /bin/bash # 指定端口号启动
$ docker run -p 80:80 debugman007/ubt14-hadoop-hbase:v1 # 指定配置启动
$ sudo docker run -d -p 10.211.55.4:9999:22 debugman007/ubt14-hadoop-hbase:v1 '/usr/sbin/sshd' -D # 参数:
# -d:表示以“守护模式”执行,日志不会出现在输出终端上。
# -i:表示以“交互模式”运行容器,-i 则让容器的标准输入保持打开
# -t:表示容器启动后会进入其命令行,-t 选项让Docker分配一个伪终端(pseudo-tty)并绑定到容器的标准输入上
# -v:表示需要将本地哪个目录挂载到容器中,格式:-v <宿主机目录>:<容器目录>,-v 标记来创建一个数据卷并挂载到容器里。在一次 run 中多次使用可以挂载多个数据卷。
# -p:表示宿主机与容器的端口映射,此时将容器内部的 22 端口映射为宿主机的 9999 端口,这样就向外界暴露了 9999 端口,可通过 Docker 网桥来访问容器内部的 22 端口了。
# 注意:这里使用的是宿主机的 IP 地址:10.211.55.4,与对外暴露的端口号 9999,它映射容器内部的端口号 22。ssh外部需要访问:ssh root@10.211.55.4 -p 9999
# 不一定要使用“镜像 ID”,也可以使用“仓库名:标签名” # start 启动容器
$ docker start 容器名或者容器ID
# stop 停止正在运行的容器
$ docker stop 容器名或者容器ID
# restart 重启容器
$ docker restart 容器名或者容器ID
# rm 删除容器
$ docker rm 容器名或者容器ID
# rmi 删除镜像
$ docker rmi 镜像名+tag或者镜像ID # 登录Docker Hub中心
$ docker login # 发布上传image(push)
$ docker push debugman007/ubt14-hadoop-hbase:v1

docker 应用-1(安装以及基础命令)的更多相关文章

  1. Linux ubuntu下docker容器安装和基础命令

    Docker介绍: 云计算就好比大货轮,docker就是集装箱虚拟机虽然可以隔离出很多"子电脑",但占用空间更大,启动更慢,虚拟机软件可能还要花钱(例如VMWare). 而容器技术 ...

  2. Lesson 01-Linux安装及基础命令

    .Linux安装(略)2.基础命令 cd 切换目录 /home 切换到home目录 . 代表当前目录 .. 代表切换到当前目录的上级目录 ~ 代表切换到用户家目录 空 代表切换到用户家目录 - 代表切 ...

  3. Git入门(安装及基础命令行操作)

    一.安装 1.Mac 在Mac中安装Git的方法不止一种.最简单的要数通过Xcode命令行工具.对于Mavericks(10.9)或更高版本的操作系统,当你第一次尝试在终端执行git命令时,系统会自动 ...

  4. MongoDB 学习笔记一 安装以及基础命令

    一.MongoDB安装配置 1.获取最新版本号: wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.0.2.tgz 2.解压缩就可 ...

  5. MySQL安装及基础命令

    介绍数据库安装基础命令 linux的下载和安装 mac的下载和安装 windows的下载和安装 介绍: 数据库在开发中占据的位置? 数据库能更简单的使用存储在文件中的数据能更好的解决并发问题,数据统一 ...

  6. nginx下载,安装,基础命令,和代理tomcat例子理解

    nginx代理讲的很好理解:https://www.cnblogs.com/ysocean/p/9392908.html 一.nginx应用场景: 1.反向代理(用的非常多) 客户端发出请求,反向代理 ...

  7. Nginx(1)---安装及基础命令

    一.简述 Nginx是一个高性能WEB服务器,除它之外Apache.Tomcat.Jetty.IIS,它们都是Web服务器 Nginx  相对基它WEB服务有什么优势:Tomcat.Jetty 面向j ...

  8. Java篇:Docker的介绍安装 和常用命令

    文章目录 为什么 出现docker Docker的简介 容器(Container) 镜像(Image) 仓库(Repository) Docker的安装 查看容器 删除镜像 删除容器 部署应用 以my ...

  9. Docker安装及基础命令

    一.docker安装 1.安装docker #关闭防火墙和selinux systemctl stop firewalld.service setenforce 0  ​ #安装依赖包 yum ins ...

随机推荐

  1. vmware提示请卸载干净再重新安装的解决办法

    结论:删掉   HKEY_LOCAL_MACHINE\\SOFTWARE\Wow6432Node\VMware, Inc.    就可以了. ----------------------------- ...

  2. 浏览器模式&用户代理字符串(IE)

    问题问题描述今天在做项目的时候,QA部门提了一个Bug,在一个搜索列表中,搜索栏为空时刷新页面,却触发了搜索功能,并且列表显示出<未搜索到结果> 环境IE11 问题原因 QA的IE11用户 ...

  3. C#网络编程技术微软Socket实战项目演练(三)

    一.课程介绍 本次分享课程属于<C#高级编程实战技能开发宝典课程系列>中的第三部分,阿笨后续会计划将实际项目中的一些比较实用的关于C#高级编程的技巧分享出来给大家进行学习,不断的收集.整理 ...

  4. 5月25号开学! 第13期《python3自动化测试selenium+接口》课程,python零基础也能学

    2019年 第13期<python3自动化测试selenium+接口>课程,5月25号开学! 主讲老师:上海-悠悠 上课方式:QQ群视频在线教学 本期上课时间:5月25号-7月28号,每周 ...

  5. JS实现网站内容的禁止复制和粘贴、另存为

    1.使右键和复制失效方法1:在网页中加入以下代码: <script language="Javascript"> document.oncontextmenu=new  ...

  6. 上海线下技术交流(AA制)

    标签: 上海线下技术交流会 作者:王清培(Plen wang) 沪江Java资深架构师 .营销云平台负责人 上海地区技术线下交流,本次聚会AA制,要的就是热爱技术,交流技术,不是凑热闹.特此留念. 活 ...

  7. Android编码学习之Fragment

    1. 什么是Fragment Fragment是Android honeycomb 3.0新增的概念,Fragment名为碎片不过却和Activity十分相似.Fragment是用来描述一些行为或一部 ...

  8. C# 多线程參数传递

    1.通过实体类来传递(能够传递多个參数与获取返回值),demo例如以下: 须要在线程中调用的函数: namespace ThreadParameterDemo { public class Funct ...

  9. EAS开发之对已有单据的增删查改功能开发

      一:对于一个已经在其他业务部门定义好的业务单元,在另一个部门新增该业务单元的增删查改操作,应该怎么做?     由于业务单元已经定义过了,所以我们不能再进行建模.定义单据ui.而是要开发出一个单据 ...

  10. app优化之流量节省

    前言:“客户端上传时间戳”的玩法,你玩过么?一起聊聊时间戳的奇技淫巧!,其实这个类似于数据版本号的东西. 缘起:无线时代,流量敏感.APP在登录后,往往要向服务器同步非常多的数据,很费流量,技术上有没 ...