Docker介绍下载安装、制作镜像及容器、做目录映射、做端口映射
在计算机中,虚拟化(英语:Virtualization)是一种资源管理技术,是将计算机的各种实体资源,如服务器、网络、内存及存储等,予以抽象、转换后呈现出来,打破实体结构间的不可切割的障碍,使用户可以比原本的组态更好的方式来应用这些资源。这些资源的新虚拟部份是不受现有资源的架设方式,地域或物理组态所限制。一般所指的虚拟化资源包括计算能力和资料存储。在实际的生产环境中,虚拟化技术主要用来解决高性能的物理硬件产能过剩和老的旧的硬件产能过低的重组重用,透明化底层物理硬件,从而最大化的利用物理硬件 对资源充分利用。虚拟化技术种类很多,例如:软件虚拟化、硬件虚拟化、内存虚拟化、网络虚拟化(vip)、桌面虚拟化、服务虚拟化、虚拟机等等。
kvm:kernel-based-virtual-machine即基于内核的虚拟机开源的系统虚拟环模块
exsi:VMware的商用的装在裸机上的可以虚拟化出多个机器的管理程序
openstack:Python开发的管理云平台,如华为云、电信云
docker:容器技术
k8s:管理docker容器的容器编排
一、Docker简介及安装
1. 介绍
Docker 是一个开源项目,诞生于 2013 年初,最初是 dotCloud 公司内部的一个业余项目。它基于 Google 公司推出的 Go 语言实现。 项目后来加入了 Linux 基金会,遵从了 Apache 2.0 协议,项目代码在 GitHub 上进行维护,Docker 自开源后受到广泛的关注和讨论,以至于 dotCloud 公司后来都改名为 Docker Inc。Redhat 已经在其 RHEL6.5 中集中支持 Docker;Google 也在其 PaaS 产品中广泛应用。Docker 项目的目标是实现【轻量级的操作系统虚拟化解决方案】。Docker 的基础是 Linux 容器(LXC)等技术。在 LXC 的基础上 Docker 进行了进一步的封装,让用户不需要去关心容器的管理,使得操作更为简便。用户操作 Docker 的【容器就像操作一个快速轻量级的虚拟机】一样简单。
相关docker的概念讲解
docker是cs架构 使用的http协议,符合resful规范
Docker镜像:特殊的文件系统
Docker容器:镜像运行起来,成为了容器,可以对比成>镜像-类;对象-容器
Registry(注册中心):相当于Python的pip install、或类似于git pull
2. 安装
本篇主要讲在Linux系统中的安装方式,安装到Windows或Mac的方法很简单,点点点,一路下一步即可,但是需要搞懂前置条件需要修改一些配置,反正也涉及不到这两个操作系统,实际工作环境docker基本都在Linux操作系统中使用
第一步:如果之前使用过的话需要先卸载
yum remove docker docker-common docker-selinux docker-engine
rm -rf /var/lib/docker
第二步:安装
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo yum install docker-ce
第三步:按照完通过查看版本号来确定是否成功
docker -v
二、Docker 启动设置镜像
1. 查看以及启动docker的相关命令
第一步:安装完成之后可以查看docker状态
systemctl status docker
第二步:启动docker的命令
systemctl start docker
2. 设置国内镜像站
第一步:先获取属于自己的镜像加速器
第二步:进入docker的配置文件
vim /etc/docker/daemon.json
第三步:修改配置并保存退出
{
"registry-mirrors": ["https://zho2fb41.mirror.aliyuncs.com"]
}
第四步:执行以下命令进行重新加载配置文件并重启
sudo systemctl daemon-reload
sudo systemctl restart docker
3. 启动与停止docker服务的常用命令
# 启动docker:
systemctl start docker
# 停止docker:
systemctl stop docker
# 重启docker:
systemctl restart docker
# 查看docker状态:
systemctl status docker
# 开机启动:
systemctl enable docker
# 查看docker概要信息
docker info
# 查看docker帮助文档
docker --help
三、 镜像相关命令
# 1 查找镜像
docker search 镜像名称
建议去hub.docker.com 直接搜,更直观(跟git拉去项目一样)
# 2 拉取镜像,指定标签 tag
docker pull centos:7
如果不指定标签,会下载最新
# 3 查看本地镜像
docker images # 等同于 docker image ls
# 4 删除镜像
docker rmi container_ID # 可以同时删多个
# 5 删除所有镜像 查出所有镜像的id号
docker rmi `docker images -q`
四、镜像制作成容器并运行
1. 查看运行的容器
# 查看正在运行的容器
docker ps
# 查看所有容器,-a 指的是 all最后的意思
docker ps -a
# 查看最后一次运行的容器,-l 指的是 last最后的意思
docker ps -l
2. 运行容器
# 启动一个centos容器,名字叫mycentos,并且进入
docker run -it --name=mycentos centos:7
yum install vim -y # 在容器中装了vim软件
exit # 退出,容器停止了
# 启动/停止容器
docker start mycentos
docker stop container_ID
# 进入到容器内部
docker exec -it f82e8578b9b1 /bin/bash
3. 做目录映射
# -v参数:目录映射
# 以后无论在宿主机还是容器中修改当前目录下的文件,都会相互影响不用提前在宿主机新建mire文件
docker run -id --name=mire -v /home/mire:/mire centos:7
4. 做端口映射
docker run -id --name=mysql -p 80:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7
netstat -nlp |grep 80 # 查看本机80端口占用情况
Docker介绍下载安装、制作镜像及容器、做目录映射、做端口映射的更多相关文章
- docker 介绍及安装操作
docker 介绍及安装操作 1.docker概述 2.docker安装及操作 1.docker概述: Docker是一个开源的应用容器引擎,基于go语言开发并遵循了apache2.0协议开源 是在L ...
- Docker CE的安装 与镜像加速
Docker CE 的安装与镜像加速 Docker CE是docker的开源版本 CENTOS 安装Docker CE 系统要求: 操作系统需要使用centos7() centos-extras库 必 ...
- 【Docker】(2)---仓库、镜像、容器
[Docker](2)---仓库.镜像.容器 学习Docker,我觉得首先要了解的是仓库.镜像.容器到底是什么,他们有什么区别. 一.通俗理解 1.Docker 镜像 (images) 容器运 ...
- Windows10官方原版系统下载安装制作方法
Windows10官方原版系统下载安装制作方法 去官网下载系统安装程序 点进去 https://www.microsoft.com/zh-cn/software-download/windows10 ...
- WSL docker打通容器间通信和追加端口映射
最近在docker中搭建一个服务,需要有多个容器通信.这里简单记录一下如何在容器间进行通信,同时说一下已经存在的容器如何追加端口映射. 增加网桥 容器间通信的目的是不适用IP而是使用容器名称进行网络通 ...
- docker(2)安装centos7镜像与容器管理
1.镜像加速器 创建/etc/docker/daemon.json { "registry-mirrors": [ "https://registry.docker-cn ...
- docker安装mysql镜像和容器
下拉镜像 docker pull mysql/mysql-server:5.5 后面的mysql标签是版本号,是可选择的,有: 5.5 5.6 5.7 8.0 创建mysql5.5的容器 docker ...
- Docker 介绍及安装
Docker介绍 Docker采用 C/S架构 Docker daemon 作为服务端接受来自客户的请求,并处理这些请求(创建.运行.分发容器). Docker基于go语言并遵从Apache2.0协议 ...
- docker利用Dockerfile来制作镜像
在前面的例子(docker tomcat镜像制作)中,我们从下载镜像,启动容器,在容器中输入命令来运行程序,这些命令都是手工一条条往里输入的,无法重复利用,而且效率很低.所以就需要一 种文件或脚本,我 ...
- docker介绍和安装(一)
虚拟化简介 虚拟化(英语:Virtualization)是一种资源管理技术,是将计算机的各种实体资源,如服务器.网络.内存及存储等,予以抽象.转换后呈现出来,打破实体结构间的不可切割的障碍,使用户可以 ...
随机推荐
- Verilog 变量声明与数据类型二
Verilog 变量声明与数据类型二 上节介绍了wire,reg数据类型及其用法,并对变量定义中的向量的定义及使用做了说明.本节主要介绍其它几种类型.常用的有如下几种:整数integer,实数 rea ...
- 第12组 Beta冲刺 (5/5)
1.1基本情况 ·队名:美少女战士 ·组长博客:https://www.cnblogs.com/yaningscnblogs/p/14016978.html ·作业博客:https://edu.cnb ...
- NOI-1253:Dungeon Master(BFS)
描述You are trapped in a 3D dungeon and need to find the quickest way out! The dungeon is composed of ...
- 02题解-洛谷 P2395 BBCode转换Markdown 题解
洛谷 P2395 BBCode转换Markdown 题解 题目传送门: here. 一道毒瘤的大模拟,给了你一部分的 BBCode 和 Markdown 语法,叫你转换.如下表: BBCode Mar ...
- 2020.6.6OO学期末总结
0.前言 本次博客是对整个java及oo学习情况的一个概略性总结,目的在于反思这半年来的学习情况和实际感受,和具体学习方面的理解和问题. 1.作业过程总结 看着自己一个学期做的所有作业,我想起的是总是 ...
- Angular架构学习
定义 Angular 是一个用 HTML 和 JavaScript 或者一个可以编译成 JavaScript 的语言(例如 Dart 或者 TypeScript ),来构建客户端应用的框架. 写 An ...
- 如何设置表格的高度 element 的table 组件
<el-table :row-style="{ height: '30px' }" :cell-style="{ padding: 0 }" :data= ...
- Manage your references to .Net assemblies Dynamics 365 for Operations VS projects
(Dynamics 365 for Operations was previously known as the New Dynamics AX) Dynamics 365 for Operation ...
- C++初识指针之一
新手学习C/C++都跳不过去的地方,就是指针,用的话,确实好用,但是概念比较绕, 指针的通俗说法 1.简单的来说,就是说每一个变量,在电脑内都占一个地方,这个地方用一个16进掉的编号来进行标记,类似于 ...
- Tensorflow learning notebook
How does tensorflow work 原著blog https://jacobbuckman.com/#posts