乐趣区

关于docker:Docker应用容器引擎的安装与基本操作Docker系列文章一

文 | 平哥 日期 | 20201112

一、Docker 简介

Docker 是基于 Go 语言 实现的开源容器我的项目。冀望达到使我的项目运行环境“一次封装,到处运行”的目标。

学习 Docker 次要目标是可能做两件事件:
1. 在 Docker 装置软件
2. 把我的项目部署到 Docker

Docker 架构:

Docker 是通过装置在宿主机上的 Daemon 后台程序来接管客户端命令,创立容器实例,从近程镜像仓库核心拉取或创立镜像。

二、Docker 装置与启动

Docker 有 windows 和 linux 版本。本次操作以装置在 Linux 上进行演示的。
以下装置步骤基于 CentOS8,须要确保该虚拟机能够连贯外网。

1.Docker 装置

Step 1 上传安装包

Docker 的装置能够分为在线装置和本地装置,因为须要连贯 Docker 官网,网速感人且极易失败,于是我采纳的是本地装置。
具体安装包:
链接: https://pan.baidu.com/s/1QYwL… 明码: ljsk

将下载好的安装包上传至 CentOS 中:

Step 2 装置依赖和 Docker

应用 yum localinstall 命令别离装置:
1、先装置 containerd.io:

# yum localinstall containerd.io-1.2.6-3.3.fc30.x86_64.rpm 

2、装置 docker-ce:

# yum localinstall -y libcgroup
# yum localinstall -y docker-ce-cli-19.03.12-3.el7.x86_64.rpm
# yum localinstall -y docker-ce-19.03.12-3.el7.x86_64.rpm

Step 3 启动并查看 Docker

启动命令:

# systemctl start docker

查看 docker 信息:

# docker info

后果如图:

Step 4 阿里云镜像加速器配置

默认状况下 Docker 从 Docker Hub 上下载镜像资源,但速度很慢,能够通过配置国内的镜像加速器来解决。
登录阿里云控制台,输出“容器镜像服务”进行搜寻,点击“镜像加速器”:

在装置好的 Docker 的服务器上,依照页面阐明配置 daemon.json 配置文件并重启即配置实现。

三、Docker 镜像操作

3.1 列出本地所有镜像

命令:

# docker images

后果如图:

后果解释:
REPOSITORY:镜像所在的仓库名称
TAG:镜像标签(其实就是版本)
IMAGE ID:镜像 ID
CREATED:镜像的创立日期(不是获取该镜像的日期)
SIZE:镜像大小

3.2 搜寻近程镜像

若本地没有须要的镜像,则能够去近程镜像仓库核心进行搜寻,命令:

# docker search mysql

后果如图:

后果解释:
NAME:仓库名称
DESCRIPTION:镜像形容
STARS:用户评估,反馈一个镜像的受欢迎水平
OFFICIAL:是否官网
AUTOMATED:主动构建,示意该镜像由 Docker Hub 主动构建流程创立的

3.3 拉取镜像

应用如下命令,即可从近程镜像仓库中拉取镜像:

docker pull mysql:latest

四、Docker 容器操作

能够将 Docker 容器看成是最简略的 Linux 环境(包含零碎内核、root 用户权限、过程空间、网络空间和用户空间)和运行在其中的应用程序(比方 MySQL)。

4.1 新建容器

命令:

docker create [options] 镜像名称或 ID

例如:

# docker create --name mysqlgcp -p 3307:3306 -e MYSQL_ROOT_PASSWORD=root mysql:latest

参数阐明:
–name:用于给创立的容器重命名
-p:宿主机和 docker 容器的端口映射,hostPort:containerPort
-e:设置参数
有可能会用 -v:主机和容器的目录映射关系,”:” 前为主机目录,之后为容器目录

以上容器创立,但未运行。

4.2 查看容器

以下命令查看本地正在运行的容器:

# docker container ls

若想查看所有曾经创立的容器,即包含未运行的容器(如 4.1 创立的容器),退出 -l 参数:

# docker container ls -l

后果:

其余罕用参数阐明:
-n 数字:显示最近 n 个创立的容器
-a:列出所有的运行过的容器
-q:列出容器 id

4.3 启动容器

应用以下命令启动已创立的容器:

# docker start mysqlgcp
或:# docker start 52bdd1defcd8

即能够应用容器名称或容器 ID

4.4 与运行中的容器交互

应用如下命令与运行中的容器进行交互:

# docker exec [option] 容器 ID [command]

例如:

docker exec -it 52bdd1defcd8 /bin/bash

参数阐明:
-i:以交互模式运行容器,通常与 -t 连用
-t:为容器重新分配一个伪终端,通常与-i 连用

成果如图:

从容器终端中退出,应用 exit 命令

4.5 进行容器

命令如下:

# docker stop 容器名称或容器 ID

4.6 创立并运行容器

命令如下:

# docker run [options] 镜像名称或镜像 ID [COMMAND] [ARG...]

具体命令举例如下:

# docker run -p 3307:3306 --name mysqlgcp -e MYSQL_ROOT_PASSWORD=root -d mysql:latest
退出移动版