docker的安装及常用命令
一:概述
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器或Windows 机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。
- DockerClient客户端
- Docker Daemon守护进程
- Docker Image镜像
- Docker Container容器

而容器技术的核心有以下几个内核技术组成:
1.cgroups 资源管理(限制空间大小)
2.Namespace 进程隔离
3.SElinux 安全
下面有一张docker容器技术和传统虚拟化技术的对比图,很清楚的看见docker之所以比传统虚拟化速度要快,是因为docker没有操作系统
可以理解为就是一个程序(不占内存,cpu,速度快)这也是和传统虚拟化最大的区别

docker也有自己的缺点
1.容器的隔离性没有虚拟化强
2.共用Linux内核,安全性有先天缺陷
3.selinux难以驾驭
4.监控容器和容器排错
二:安装要求
1.64位操作系统
2.至少RHEL6.5版本以上,个人强烈建议RHEL7.0版本
3.关闭防火墙(不是必须)
4.内核版本必须是3.10以上,可以通过 uname -r 命令检查内核版本
三:安装docker
1.已经安装过docker的,需要进行卸载
命令:yum -y remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-selinux docker-engine-selinux docker-engine
因为我是新建的虚拟机,并没有安装docker历史

2.安装docker依赖包
命令:yum -y install yum-utils device-mapper-persistent-data lvm2

有两种方法下载docker源,一种是官方,一种是阿里云,个人建议使用阿里云
命令:cd /etc/yum.repos.d/
官网地址:yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
阿里云地址:yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 
3.正式安装docker
命令:yum -y install docker-ce

4.启动docker以及测试
命令:systemctl start docker #启动docker
测试:docker run hello-world

执行命令docker后,如果与下图内容一致 则表示成功

或者输入ip a (ifconfig)会出现如下图,也是安装成功

Docker环境信息
--info命令 用于检测Docker是否正确安装,一般结合docker version命令使用。 --version命令

镜像常用列表
docker images 查看镜像列表 例: docker images
docker history 查看镜像制作历史 例: docker history docker.io/centos
docker inspect 查看镜像底层信息 例: docker inspect docker.io/centos
docker pull 下载镜像 例: docker pull centos 例: docker pull seanlook/centos:centos6
docker push 上传镜像 例: docker push seanlook/mongo
docker rmi 删除本地镜像 例: docker rmi docker.io/centos
docker save 镜像另存tar包导出镜像 例: docker save docker.io/busybox:latest -o busybox.tar (导出镜像到busybox.tar里)
docker load 导入镜像 例: docker load -i nginx.tar
docker search 搜索镜像 例: docker search docker.io/centos
docker tag 修改镜像名称和标签 例: docker tag docker.io/centos:latest cen:v1 把镜像名称docker.io和标签latest 改成cen:v1 latest为默认标签
容器常用列表
docker run 运行容器 例:docker run -itd --name tem centos:latest
it:是直接使用,一旦退出,容器自动关闭 itd:是放在后台运行 --name 容器名 centos:latest 镜像
docker ps 查看正在运行的容器 docker ps -a 查看所有容器列表 docker ps -aq 仅显示容器id
docker stop 关闭容器 查看运行的容器id然后关闭 例: docker stop b8f
docker start 开启容器 同上
docker restart 重启容器 同上
docker attach/exec 进入容器 attach 进入容器后exit退出会导致容器关闭 exec进入容器退出时不会关闭容器 docker attach b8f2
docker inspect 查看容器底层信息 docker inspect b8f
docker top 查看容器进行列表 docker top b8f2
docker rm 删除容器 docker rm b8f2 容器运行时删除会提示错误 要先关闭容器
端口映射 (使用doxker部署服务时需要做端口映射)
docker pull nginx //如以下载好nginx
docker run -p 8080:80 -d docker.io/nginx //将80端口映射为8080,或者80:80还是原先的80端口,不可以不写
netstat -anp | grep 8080 //端口已经开启了
docker ps //nginx已经在运行了
当docker运行nginx时,外界访问还是docker所在的那个IP地址,就相当于nginx在那台机器上运行一样
docker的安装及常用命令的更多相关文章
- windows下docker的安装及常用命令学习
docker search 镜像名 本文主要介绍Docker在Windows下的安装.关于Docker的介绍和文档在其官网中可以找到:http://www.docker.com .安装环境:Windo ...
- 【Docker】docker的安装和常用命令
一.docker安装和启动 1.yum 命令 yum install docker 2.docker启动命令 sudo systemctl start docker 二.docker常用命令 dock ...
- ios开发环境配置及cordova安装与常用命令
一.ios开发环境配置 1.首先要有台Mac Book,如果有Mac Book,跳过步骤2.3.4,如果没有,执行步骤2.3.4: 2.下载并安装VMware Workstation,最好是下最新版本 ...
- Git安装以及常用命令(图文详解)
**Git安装以及常用命令** 1.下载安装Git,傻瓜式安装相信大家都会. 官网下载地址:[https://git-scm.com/downloads] 2.Git基本操作 (1)git --ver ...
- linux基础学习之软件安装以及常用命令
linux基础学习之软件安装以及常用命令 调用中央仓库: yum install wget 然后下载nodejs: wget https://nodejs.org/dist/v10.14.2/node ...
- Git安装和常用命令
Git是目前世界上最先进的分布式版本控制系统!!! Git能自动帮我们记录每次文件的改动,还可以让同事协作编辑. 接下来,简单的介绍下Git的安装和常用命令: Git安装: 1.Windows系统,进 ...
- RabbitMQ入门教程(一):安装和常用命令
原文:RabbitMQ入门教程(一):安装和常用命令 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn ...
- 记录redis安装及常用命令
Redis安装及常用命令 一.安装 1.下载,解压,进入redis解压目录,make. make PREFIX=目录/redis install :安装到指定目录文件名为redis. 2.将解压目录里 ...
- 实验 1 Linux 系统的安装和常用命令
实验 1 Linux 系统的安装和常用命令 (题目) 一.实验目的 (1)掌握 Linux 虚拟机的安装方法.Spark 和 Hadoop 等大数据软件在 Linux 操作系统 上运行可以发挥最佳性能 ...
随机推荐
- 【gradle使用—gradle介绍】
Gradle基本组件 Gradle是一个框架,定义了一套自己的规则,所以要搞清楚Gradle,必须要遵守它设计的原则,下面我们要先搞清楚一些Gradle的概念: Gradle中,每一个待编译的工程是 ...
- Android9.0 SystemUI 网络信号栏定制修改
前情提要 Android 8.1平台SystemUI 导航栏加载流程解析 9.0 改动点简要说明 1.新增 StatusBarMobileView 替代 SignalClusterView,用以控制信 ...
- Python——标识符的命名规则
01 Python语言的特点 python的语言特点有很多,我们这里只讲一点,python是一门面向对象的语言,即一切皆对象(Linux中有一句是:一切皆文件),括号内的只是打个比方,不懂也没事,就是 ...
- jquery 路径动画贝塞尔动画
jquery 路径动画贝塞尔动画 <pre><!DOCTYPE html><!DOCTYPE html><html> <head> < ...
- Unity中用Mesh画一个圆环
Probuider 前几天在做一个小项目的时候,用到了Unity自带的一个包ProBuilder其中的Arch生成1/4圆. 挺好玩的,可以在直接Unity中根据需要用Mesh定制生成图形,而不用建模 ...
- 【Go 入门学习】第一篇关于 Go 的博客--Go 爬虫初体验
一.写在前面 其实早就该写这一篇博客了,为什么一直没有写呢?还不是因为忙不过来(实际上只是因为太懒了).不过好了,现在终于要开始写这一篇博客了.在看这篇博客之前,可能需要你对 Go 这门语言有些基本的 ...
- SpingBoot之集成Redis集群
一.安装Redis集群 安装步骤参照网上教程,Mac安装步骤参照https://github.com/muyl/mac-docker-redis-cluster 二.创建SpringBoot工程 创建 ...
- 创建基于OData的Web API - Knowledge Builder API, Part II:Project Setup
本篇为Part II:Project Setup 查看第一篇<Part I: Business Scenario> 第一步,准备步骤. 准备步骤一,下载.NET Core 2.2 SDK ...
- T-SQL Part VIII: CROSS APPLY, OUTER APPLY
除了CROSS JOIN, INNER JOIN, OUTER JOIN之外,T-SQL还提供了CROSS APPLY和OUTER APPLY这两个较为另类的Set操作符. 首先来看CROSS APP ...
- python3 控制安卓手机的飞行模式遇到的问题汇总
一.首先调通电脑对手机能落实 adb shell命令 验证通过标准:控制wifi开关的命令,能让wifi功能开启和关闭 (adb shell svc wifi enable 和 adb she ...