初识Docker

一、何为docker

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

Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。

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

1、Docker如何解决大型项目的依赖关系复杂,不同组件依赖的兼容性问题?

(1)、Docker允许开发中将应用、依赖、函数库、配置一起打包,形成可移植镜像

(2)、Docker应用运行在容器中,使用的是沙箱机制,相互隔离

2、Docker如何解决开发、测试、生产环境有差异的问题

(1)、Docker镜像中包含完整的运行环境,包括系统函数库,仅依赖系统内的Linux内核,因此可以在任意的Linux操作系统上运行

3、Docker是一个快速交付引用、运行应用的技术

(1)、可以将 程序及其依赖、运行环境一起打包为一个镜像,可以迁移到任意的Linux操作系统上

(2)、运行利用沙箱机制形成的隔离容器,各应用之间互不干扰

(3)、启动、移出都可以通过一个命令完成,方便快捷

二、Docker与虚拟机

Docker和虚拟机的差异

(1)、docker是一个系统进程;虚拟机是在操作系统中的操作系统

(2)、docker体积小、启动速度快、性能好;虚拟机体积大、启动速度慢,性能一般

三、Docker架构

1、镜像和容器

镜像(Image):Docker将应用程序及其所需的依赖、函数库、环境、配置等文件打包在一起,称为镜像(镜像都是只读的)。

容器(Container):镜像中的应用程序运行后形成的进程就是容器,只是Docker会给容器做隔离,对外不可见。一个镜像可以运行多个容器。

2、Docker和DockerHub

(1)、DockerHub是一个Docker镜像的托管平台。这样的平台称为Docker Registry。

(2)、国内也有类似的DockerHub 的公开服务,比如网易云镜像服务阿里云镜像库等。

3、docker架构

docker是一个CS架构的程序,由两部分组成

(1)、服务器(server):Docker守护进程,负责处理Docker指令,管理镜像、容器等。

(2)、客户端(client):通过命令或RestAPI向Docker服务器端发送指令。可以在本地或远程向服务器端发送指令。

四、Docker的安装

1、CentOS安装Docker

1.1、卸载(可选)

手动卸载旧版本:

yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

1.2、安装docker

1.2.1 官方脚本一键安装命令:

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

1.2.2 国内daocloud一键安装命令:

curl -sSL https://get.daocloud.io/docker | sh

(注意:Docker应用需要用到各种端口,需要逐一去修改防火墙设置。非常麻烦。建议学习的话就直接关闭防火墙)

# 关闭
systemctl stop firewalld
# 禁止开机启动防火墙
systemctl disable firewalld
# 开启
systemctl start firewalld
# 启动docker
systemctl start docker
# 查看docker状态
systemctl status docker // 返回有active(running)
docker -v //查看docker版本

1.2.3 卸载docker

删除安装包

yum remove docker-ce

删除镜像、容器、配置文件等

rm -rf /var/lib/docker

 

1.3 设置仓库

1.3.1 安装所需的软件包

sudo yum install -y yum-utils \
  device-mapper-persistent-data \
  lvm2

1.3.2 可以选择国内的一些源地址:

#阿里云
sudo yum-config-manager \
    --add-repo \
    https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#清华大学源
sudo yum-config-manager \
    --add-repo \
    https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo

 

2、配置镜像

国内镜像:阿里云的 镜像加速器

 

posted @ 2023-09-09 12:29  蓝梦星宇  阅读(27)  评论(0)    收藏  举报