你的技术够用吗?学会docker基础知识

Posted Friends of the wind

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了你的技术够用吗?学会docker基础知识相关的知识,希望对你有一定的参考价值。

是什么?

Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。

Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。
简言之,只需要一次配置好环境,换到别的机子上就可以一键部署。

容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。

Docker 从 17.03 版本之后分为 CE(Community Edition: 社区版) 和 EE(Enterprise Edition: 企业版)。


优点

Docker 是一个用于开发,交付和运行应用程序的开放平台。

Docker 能够将应用程序与基础架构分开,从而可以快速交付软件。借助 Docker,可以与管理应用程序相同的方式来管理基础架构。通过利用 Docker 的方法来快速交付,测试和部署代码,大大减少编写代码和在生产环境中运行代码之间的延迟。


术语介绍

1、 镜像 image
应用程序文件与环境文件的集合。与普通文件集合不同之处是,docker将不同的文件及目录挂到同一个虚拟文件系统下(叫做联合文件系统)。

2、 容器 container
镜像运行起来就是容器。

3、仓库 repostory
是放置image(镜像)的地方。


centos安装docker

1、 安装条件

CentOS 系统的内核版本高于 3.10,uname -r 查看内核版本
可以连接互联网;配置yum源

2、阿里云
1)阿里云一键安装:

配置好阿里yum源,输入以下命令:
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
安装成功如下:

2)手动安装
下载yum源:

yum-config-manager
–add-repo
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

指定安装版本,也可不指定默认安装最新
yum install docker-ce-19.03.10 docker-ce-cli-19.03.10 containerd.io

会有提示信息,选择Y

3、 启动服务验证

创建存放目录
mkdir /etc/docker

重载内核
systemctl daemon-reload

启动docker
systemctl start docker

4、配置Docker镜像加速器

dockerhub是在国外,下载镜像的时候,速度非常慢,且经常会出现timeout的情况,因此,我们这里决定配置一个加速器,能够帮组我们快速的下载镜像,常用的加速器有很多,这里先介绍一个。

阿里云镜像加速器

前提需要每个人都申请注册一个阿里云账号。

注册成功后,在阿里云官网上,找到容器镜像服务

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-‘EOF’
{
“registry-mirrors”: [“https://1dmptu91.mirror.aliyuncs.com”]
}
EOF
sudo systemctl daemon-reload

sudo systemctl start docker

5、验证:

镜像有了,证明成功

使用docker部署服务

1、使用docker部署nginx服务。

下载Nginx镜像:
docker pull nginx

运行nginx
docker run -itd --name testweb -p 8080:80 nginx

2、使用docker部署mysql服务。

下载mysql镜像:
docker pull

运行mysql

docker run -d --name testsql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123.com mysql:5.7

3、查看本地是否安装成功

4、验证
访问Nginx服务:

访问mysql服务:

以上是关于你的技术够用吗?学会docker基础知识的主要内容,如果未能解决你的问题,请参考以下文章

centos能安装docker吗

使用云原生buildpacks将你的代码转换成Docker Image | 技术干货

零基础深度学习能学明白吗?

超实用,一口气学会 Centos/Docker/Nginx/Node/Jenkins 等基础操作

idea免费版够用吗

自学编程怎么样啊,好学吗?