Docker官网下载:https://www.docker.com/products/overview

官方文档:https://docs.docker.com/

官方安装文档:https://docs.docker.com/engine/installation/

官方安装脚本:

curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh

Docker 及 Docker Compose 安装及使用教程 (2020版):https://blog.csdn.net/u011318077/article/details/105233543


Centos 7

Centos 6的内核版本太低,需要升级内核及整个系统的依赖库,比较复杂,不建议使用。

root用户登录,uname -r确保内核版本大于等于3.10
yum update更新系统

从 2017 年 3 月开始 docker 在原来的基础上分为两个分支版本: Docker CE 和 Docker EE。
Docker CE 即社区免费版,Docker EE 即企业版,强调安全,但需付费使用。

新版本(支持as build语法)

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

yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum makecache fast

yum -y install docker-ce
systemctl start docker

旧版本(不支持as build语法)

# 加入Docker源
tee /etc/yum.repos.d/docker.repo <<-'EOF'
[dockerrepo]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/main/centos/7/
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
EOF

# 安装
yum install -y docker 或者 yum install docker-engine -y
systemctl enable docker.service
systemctl start docker

Windows

下载最新exe安装包进行安装。安装后看能否正常运行Docker,出现闪退,报错等等,先打开virtual虚拟机看虚拟机是否正常,虚拟机报错很可能是3个Windows字体的**.dll**文件被破解了,下载原版替换,C:\Program Files\Oracle\VirtualBox\drivers\vboxdrv\VBoxDrv.inf文件右键安装,然后重启。

Windows 10以下

Boot2docker:
https://github.com/boot2docker/windows-installer/releases

Toolbox:https://github.com/docker/toolbox/releases

Windows 10以上

官网下载:https://docs.docker.com/docker-for-windows/


Ubuntu 14 && Ubuntu 16

root用户登录,uname -r确保内核版本大于等于3.10

法一apt-get install docker docker.io -y

法二:安装最新版
1.增加GPG密钥

apt-get update
apt-get install apt-transport-https ca-certificates
apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D

2.新增或编辑source列表里的docker.list文件
vim /etc/apt/sources.list.d/docker.list 如果不存在就新增,填入下面一个地址。保存退出
Trusty 14.04 (LTS) deb https://apt.dockerproject.org/repo ubuntu-trusty main
Xenial 16.04 (LTS) deb https://apt.dockerproject.org/repo ubuntu-xenial main

apt-get purge lxc-docker  #清理以前安装过的docker源,没有安装的话,跳过
apt-cache policy docker-engine #查看是否有正确的可用版本

3.安装Docker

apt-get update
apt-get install linux-image-extra-$(uname -r) linux-image-extra-virtual
#从14.04版本以上开始docker推荐安装linux-image-extra
apt-get install docker-engine
service docker start
docker run hello-world

Deepin

Deepin这里比较特殊,不能按照Debian的方法来安装。

apt-get remove docker docker-engine docker.io
apt-get install -y apt-transport-https ca-certificates curl python-software-properties software-properties-common
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -

# 查看密钥是否安装成功
apt-key fingerprint 0EBFCD88

add-apt-repository   "deb [arch=amd64] https://download.docker.com/linux/debian   wheezy   stable"
apt-get update
apt-get install -y docker-ce

Mac

Docker Desktop

https://www.docker.com/products/docker-desktop


Boot2Docker

通过运行虚拟机来使用Docker,比较占空间,性能有不好

安装包安装

下载最新pkg格式安装包:Boot2Docker-1.3.2.pkg进行安装。
https://github.com/boot2docker/osx-installer/releases/latest

或者手动初始化Boot2Docker,打开终端并运行:

boot2docker init
boot2docker start
export DOCKER_HOST=tcp://$(boot2docker ip 2>/dev/null):2375

一旦你初始化化好了一个虚拟机,你就能用boot2docker stop和boot2docker start来进行控制。
安装好后带有virtualBox虚拟机。

更新

  • 1.下载最新版的Docker for OS X Installer
  • 2.运行安装程序, 更新VirtualBox和Boot2Docker管理工具。
  • 3.更新现有虚拟机,打开终端并运行:
boot2docker stop
boot2docker download
boot2docker start

Brew方式安装

brew update
brew install docker
brew link docker
brew link boot2docker

当用brew安装某个应用后,但没有成功创建brew link(比如,link的目录已经存在相同的老版本文件导致link创建失败),此时可以将老版本删除,然后再次执行brew link xxx就可以创建link了,之后就可以使用brew安装的新版本了。

注:ls -lh /usr/local/bin/*docker*  就可以看到Docker安装的位置。

Boot2Docker的缺省用户名为docker,密码为tcuser。

运行Docker

在终端上跑一个“hello world” 的示例来测试Docker。启动虚拟机然后运行:
docker run ubuntu echo hello world
这样应该会下载ubuntu镜像并打印hello world。

容器端口跳转

最新版的boot2docker建立了一个仅有网络适配器的主机提供可以接入容器的端口。
如果你运行一个有公开端口的容器,

docker run --rm -i -t -p 80:80 nginx
然后你应该能用IP地址接入Nginx服务器:

boot2docker ip 显示当前IP
这个IP地址可能被VirtualBox启用的DHCP修改。

Boot2Docker管理工具提供了很多命令:

./boot2docker [<options>] [<args>]

参数:{help|init|up|ssh|save|down|poweroff|reset|restart|config|status|info|ip|delete
**|download|version} **


docker容器磁盘扩容

默认情况下,docker容器是创建10G的磁盘,但是某些情况下10G是不够的,扩容有两种方式。

法1:在启动容器时指定指定大小

可以修改配置文件让每个启动的容器都是你指定的大小:

vim /etc/sysconfig/docker-storage
在参数中加入:--storage-opt dm.basesize=20G

或者启动容器时设置,如:docker -d --storage-opt dm.basesize=20G

法2:扩容mapper设备(不停机对已有的容器扩容)

类似lvm的原理,在容器里df -Th查看文件系统,可以看到mapper设备的编号,在真机中/dev/mapper/docker..开头的设备中就有对应的文件。

# 查看卷大小,第二位数就是卷大小,表示有多少个512bytes的扇区。
dmsetup table [docker-8:2...卷编号]
0 20971520 thin 253:0 35

# 计算新容量字节数
echo $((20*1024*1024*1024/512))
41943040

# 修改大小,这里的是上面dmsetup table时输出的内容,只是改一下容量大小。
echo 0 [新容量41943040] thin 253:0 35 |dmsetup load [docker-8:2...卷编号]

# 激活
dmsetup resume [docker-8:2...卷编号]

# 查看、验证卷大小,第二位数就是卷大小,表示有多少个512bytes的扇区。
dmsetup table [docker-8:2...卷编号]

# 修改文件系统大小
resize2fs /dev/mapper/[docker-8:2...卷编号]

# 验证大小
进入容器里面,df -Th查看是否成功扩容

Docker容器技术入门

https://mp.weixin.qq.com/s/wIRXLf-akMxXAPjSFQ0DLw
https://mp.weixin.qq.com/s/zPVY4Yx4g_bIX5wz9iFrSg

文章作者: Leo
版权声明: 本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 LeoLan的小站
虚拟化 docker docker安装
喜欢就支持一下吧