Docker 安装&基本操作

Docker 安装

Docker 中的三个概念:镜像,容器,仓库

  1. 镜像(image):Docker 镜像就是一个只读的模板,镜像可以用来创建 Docker 容器。Docker 提供了一个很简单的机制来创建镜像或者更新现有的镜像,用户甚至可以直接从其他人那里下载一个已经做好的镜像来直接使用。
    镜像是一种文件结构。Dockerfile中的每条命令都会在文件系统中创建一个新的层数据库增删改查基本语句次结构,文件系统在这些层次上构建起来,镜像就构建于这些联合的docker安装文件系统之上。Docker官方网站专门有一个页面来存经验总结法储所有可用的镜像,网址是:​centos是什么系统​inde经验分享发言稿x.docker.io​​。mysql索引
  2. 容器( Container):容器是从镜像创建的运行实例。它可以被启动、开始、停止、删除。docker常用命令每个容器都是相互隔离centos7的、保证安全的平台。可以把容器看做是一个简易版的 Linux 环境,Docker 利用容器来运行应用。镜像是只读的,容器centos是什么系统在启动的时候创建一层可写层作为最上层。
  3. 仓库:仓库是集中存放镜像文件的场所,仓库注册服mysql索引务器(Registry)上往往存放着多个仓库,数据库增删改查基本语句每个仓库中又包含了多个镜像,每个镜像有不同的标签(tag)。目前,最数据库查询语句大的公开仓库是 Docker Hub,存放了数量庞大的mysql数据库命令大全镜像供用户下载。

Docker仓库用来保存我们的images,当我们创建了自己的image之后我们就可以使用push命令将它上传到公有或者私有仓库,这样下次要在另外一dockers什么品牌台机器上使用这个经验总结法image时候,只需要从仓库上pull下来就可以了。Docker 仓库的概念跟 Git 类似,注册服务器可以理解为 GitHub 这样的托管服务。

一.安装 D数据库是什么ocker

本次实验环境:​​腾讯云服务器​​ CentOS 6.7 x86_64

前提条件:

Docker运行对内核要求比较高,因此数据库查询语句一般建议直接在Ubuntu这样的平台运行。但作为一个容器标准,Docker也是支持其他如CentOS, Mac OS Xcentos7安装图形界面, Windows等平台。目前Docker支持以下版本CentOS:

  • CentOS 7(64位)
  • Cecentos7关闭防火墙ntOS 6.5(64位)及以mysql安装配置教程
  • 在运行CentOS 6.5及以后版本时,需要内核版本>=2.6.数据库系统工程师32-4mysql索引31,因为这些内核包含了运行Docker的一些特定修改。

Docker默认使用AUFS作为存储驱动,但是AUFS并没有被包括在Linuxdockerfile的主线内核中。CentOS中可以使用Device Mapper作为存储驱动,这数据库查询语句是在2.6.9内核版本引入的docker常用命令新功能。我们需要先确认是否启docker安装用该功能:

CentOS 7

Docker RPM包已经包含在Cen数据库原理及应用tOS-Extra仓库中,所以我们可以直接使用Yum安装:

​# yum install docker​

CentOS 6centos7安装图形界面.6

需要注意的是,CentOS6.6中,已经有一个同名docker的可执行系统程序包。所以Docker RPM包命名为docker-io,我们先卸掉数据库docker。

​# yum -y remove docker​

第三步 Install Docker-IO

​# yummysql数据库基础知识 -y install docker-i经验总结法o​

这样完成了Docker的安装。

​# /etc/init.d/docker start #启动docker​

​# docker info #查看 docker 基本信息​

二. Docker 基本操作

# docker run -d --name mynginx nginx   #启动nginx镜像,没有会自动pull
# docker stop bfd094233f96 #停止一个容器,根据容器 id 进行删除
# docker rm bfd094233f96 #删除一个容器
# docker attach d20f3dc6cd92 #进入一个正在运行的容器

-t 选项让Docker分配一个伪终端(pseudo-tty)并绑定到容器的标准输入上,
-i 则让容器的标准输入保持打开。
–name 使用经验是什么意思一个自定义的名字

此命令不太好用,建议使用以下命令进入容器:

[root@localhost docker] docker inspect --format "{{.State.Pid}}" mynginx  #获取容器pid 19769
[root@localhost docker] nsenter --target 19769 --mount --uts --ipc --net --pid #进入容器(推荐方法)
docker run -d -p 91:80 --name mynginx2 nginx # -p 指定端口映射,将80映射为host的91

存储镜像:

# docker save -o ubuntu_14.04.tar ubuntu:14.04

载入镜像:

# docker load < ubuntu_14.04.tar  或者使用 
# cat ubuntu.tar | docker import - test/ubuntu:v1.0

移除本地镜像:

​# docker rmi training/sinatra​

清理所有未打过标签的本地镜像:

​# docker rmi $(docker数据库系统概论第五版课后答案 images -q -f "dangling=true")​

其中 -q 和 -f 是 quiet,–filter 的缩写, 完整的命令其实可以写着下面这样,是不是更容易理解一点?

​# docker rmi $(docker images --quiet --filter "dangling=true")​

注: 容器是否会长久运行,是和docker run指定的命令有关,和 -d 参数数据库查询语句无关。

要获取容器的输出信息,可以通过 docker logs 命经验分布函数令。

​# docker logs [container ID or NAMES]​

删除容器:

​# docker rm 默认并不会删除运行中的容器​

有关容器和镜像的底层信息:

​# docker inspect经验 container/icentos7关闭防火墙mage​

可以查看:

容器实例的IP地址

端口绑定列表

特定端口映射的搜索

收集配置的详细信息

从容器内复制文件到指定的路径上:

​# docker cp co经验是什么意思ntainer:path hostcentos7path​

使用Dockerfile来构建镜mysql数据库基础知识像:

​# docker build [options] PATH | URL​

–rm=true表示构建成功后,移除所有中间容器
mysql数据库命令大全no-cache=false表示dockers在构建过程中不使用缓存

Docker 使用

查找Docker镜像

安装Dodocker是干什么的cker镜像的第一步,是查找你需要的Docker镜像列表,键入:

​docker search mysql​

如果出现权限问题,请在最前面加入sudo:

​sudo docker经验英文 search mysql​

查询返mysql创建表回一个列表:

NAME            DESCRIPTION                   STARS   OFFICIAL  AUTOMATED
mysql MySQL is a widely used, open-source relati... 2981 [OK]
mysql/mysql-server Optimized MySQL Server Docker images. Crea... 194 [OK]
centurylink/mysql Image containing mysql. Optimized to be li... 46 [OK]
sameersbn/mysql 36 [OK]
jdeathe/centos-ssh-mysql CentOS-6 6.8 x86_64 / MySQL. 8 [OK]
appcontainers/mysql Centos/Debian Based Customizable MySQL Con... 8 [OK]
marvambass/mysql MySQL Server based on Ubuntu 14.04 6 [OK]
drupaldocker/mysql MySQL for Drupal 2 [OK]
azukiapp/mysql Docker image to run MySQL by Azuki - http:... 2 [OK]
yfix/mysql Yfix docker built mysql 2 [OK]
alterway/mysql Docker Mysql 2 [OK]
frodenas/mysql A Docker Image for MySQL 2 [OK]
andreluiznsilva/mysql A extension of the offical MySQL container... 1 [OK]
phpmentors/mysql MySQL server image 1 [OK]
sin30/mysql MySQL images with my own config files. 1 [OK]
tozd/mysql MySQL (MariaDB fork) Docker image. 0 [OK]
nanobox/mysql MySQL service for nanobox.io 0 [OK]
...

列表包含了所有的MySQL镜像,其中:

  • NAME字段是镜像的名字
  • DESCRIPTION字段是对镜像的简单描述
  • STARS数量反映了用户的喜爱程度
  • OFFICIAL字数据库增删改查基本语句段如果是OK,代表了这个镜像是官方提供的,可以信任
  • AUTOMATED字段如果是OK,代表了这个镜像是基于公开的脚本制作的,可以信任
  • 如果OFFICmysql数据库IAL和AUTOMATED都不为OK,那使用的时候需要额外小心了,这类镜像中可能包含恶意软件,不过对于个人非敏感数据还是可以使用的。

此外,你也可以通过访问​https经验://hub.docker.com/" target="_blank">​https://hub.docker.centos7网络配置com/​​经验,通过W数据库增删改查基本语句eb来搜索你需要的镜经验主义像。

下载Docker镜像

当你找到合适的镜像后,可以通过:

​docker pull [REGISTRYHOST/][USERNAME/]NA经验ME[:TAG]​

来进行下载,方括数据库设计号中的是可选mysql安装配置教程项:

​docker pull mysql​

导出Docker镜像

你可以将本地镜像导出为文件,如我们刚才下载的MySQL镜像:

​docker save -o mysql.tar mysql​

将我们的MySQcentos7关闭防火墙L镜像导出为mysql.tar.

导入docker菜鸟教程Domysql数据库cker镜像

有导出就有导入,导入的命令是:

​docker load -i mys经验主义ql.tar​

将我们的MySQL镜像导入。

删除Docker镜像

为了节约磁盘空间,有时候我们需要删除不需要的Docker镜像文件,首先查看我们拥有的Docker镜像文件:

​docker images​

然后删除不需要的镜像,释放磁盘空间:

​ddockerocker rmi [REGISTRYHOST/][USERNAME/]NAME[:TAG]​

通过Docker File编译Docker镜像

制作Docker File我们放在后面再讲mysql数据库,假设你有一个名为Dockerfile的文件,编译制作Docker的命令数据库是什么是:

​docker build -f Dockerfile .​经验分享发言稿

成功后将在当前路径下制作出一个Doc数据库系统ker镜像文件。

代码改变世界