Docker基础

Posted solememory

tags:

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

docker
docker是容器,用来装应用的容器,每个应用都在内核里面进行隔离
每个应用之前的linux内核都是共用的,所以更轻量化
采用go语言开发,C/S架构
 
docker内的容器如何连接网络呢?
安装完docker后可以ifconfig查看,可以看到自动生成了docker0的数据,那么这个docker0是一个默认容器与宿主机交互的桥梁,类似于一个路由器,所有的容器都是通过他这个虚拟网口,而他会通过eth0去实现上网
 
docker和虚拟机的区别
docker:
轻量化,大概200M(因为共用一个linux内核,而且docker会对包做精简)
速度快,启动只需几秒
虚拟机:
一般需要10G以上
启动需要四五分钟
 
 
docker组件
假如docker是一辆汽车
docker:汽车引擎
dockerfile:汽车图纸,可以创建docker镜像
images:类似于样版车,通过dockerfile创建的image镜像,不能正常提供服务
container:把汽车的一些零件,拼接在一起,把images镜像添加各种参数,才能创建出一个正常的容器提供服务
docker compose:老司机,相当于运行各种容器
docker volume:汽车油箱,存储一些数据
docker swarm:交通枢纽,用来管理容器
docker registry:4s店,相当于仓库
 
安装docker
1.在Centos上安装
linux内核版本依赖
kernel version >= 3.8
可以使用如下命令查看
uname -a | awk ‘{split($3, arr, "-"); print arr[1]}‘
 
如果已安装过Docker, 需要移除老版本的Docker
sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine
 
添加Docker repository yum源
# 国内源, 速度更快, 推荐 sudo yum-config-manager --add-repo https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo 官方源, 服务器在国外, 安装速度慢 $ sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
 
开始安装Docker Engine
sudo yum makecache fast sudo yum install docker-ce docker-ce-cli containerd.io
 
开启Docker
sudo systemctl enable docker sudo systemctl start docker
 
验证是否安装成功
sudo docker run hello-world
如果出现"Hello from Docker.", 则代表运行成功
 
如果在每次运行docker命令时, 在前面不添加sudo, 可以执行如下命令:
sudo usermod -aG docker $USER
 
如果嫌上面安装步骤麻烦, 可以运行如下脚本来安装
不能在生产系统中使用
curl -fsSL https://get.docker.com -o get-docker.sh sudo sh get-docker.sh --mirror Aliyun sudo systemctl enable docker sudo systemctl start docker sudo groupadd docker sudo usermod -aG docker $USER
 
2.在Ubuntu上安装
linux内核版本依赖
kernel version >= 3.8
可以使用如下命令查看
uname -a | awk ‘{split($3, arr, "-"); print arr[1]}‘
操作系统依赖, 如下版本都可以
Disco 19.04 Cosmic 18.10 Bionic 18.04 (LTS) Xenial 16.04 (LTS)
 
如果已安装过Docker, 需要移除老版本的Docker
sudo apt-get remove docker docker-engine docker.io containerd runc
 
使用Docker repository 来安装
更新apt包索引 sudo apt-get update 为支持https sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common 添加Docker GPG秘钥
国内源 curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add - 或者国外源 curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - 添加安装源 推荐国内源 sudo add-apt-repository "deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu $(lsb_release -cs) stable" 或者国外源 sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
 
安装Docker
更新apt包索引 sudo apt-get update 安装docker sudo apt-get install docker-ce docker-ce-cli containerd.io
 
开启Docker
sudo systemctl enable docker sudo systemctl start docker
 
验证是否安装成功
sudo docker run hello-world
如果出现"Hello from Docker.", 则代表运行成功
 
如果在每次运行docker命令是, 在前面不添加sudo, 可以执行如下命令:
sudo usermod -aG docker $USER

以上是关于Docker基础的主要内容,如果未能解决你的问题,请参考以下文章

Docker基础

Docker 镜像:基于 Ubuntu 的基础镜像中文问题解决

Docker 基础镜像

Docker——Docker基础+Docker安装

docker入门基础

Docker基础