Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
你就当它是你用过的沙盒,虚拟机就可以了。
还是基于fedora来说吧
1.安装docker
yum install docker
1.更新按照docker官方的方式,并使用阿里云镜像安装:
dnf -y install dnf-plugins-core
dnf config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/fedora
/docker-ce.repo
dnf install docker-ce docker-ce-cli containerd.io
dnf install grubby (官方没写,我的fedora31 安装完成后没有grubby命令,需要安装一下)
grubby --update-kernel=ALL --args="systemd.unified_cgroup_hierarchy=0"
2.改变docker储存路径,daocoloud镜像(可选)
因为我的fedora装在NUC上,NUC是只有4G板载EMMC,装了fedora后没什么空间了,另挂的硬盘挂载在 /storage 所以,我要把docker的镜像存再/storage上。要更改存储路径,一般人都不用的。
Docker 版本在 1.12 或更高
创建或修改 /etc/docker/daemon.json 文件,修改为如下形式 (请将 加速地址 替换为在加速器页面获取的专属地址)
{
"registry-mirrors": ["http://**************.daocloud.io"],
"graph": "/storage/docker"
}
mirrors请自己到daocloud.io注册获取。/storage/docker,就是我设置的docker保存镜像等的路径。
3.启动docker
systemctl start docker
4.检查docker配置
docker info
[root@NUC ~]# docker info
Containers:
Running:
Paused:
Stopped:
Images:
Server Version: 1.13.
Storage Driver: overlay2
Backing Filesystem: extfs
Supports d_type: true
Native Overlay Diff: true
Logging Driver: journald
Cgroup Driver: systemd
Plugins:
Volume: local
Network: bridge host macvlan null overlay
Authorization: rhel-push-plugin
Swarm: inactive
Runtimes: oci runc
Default Runtime: oci
Init Binary: /usr/libexec/docker/docker-init-current
containerd version: caba7670d38dc7cddb0c19bcd97cc27fdd65a789 (expected: aa8187dbd3b7ad67d8e5e3a15115d3eef43a7ed1)
runc version: caba7670d38dc7cddb0c19bcd97cc27fdd65a789-dirty (expected: 9df8b306d01f59d3a8029be411de015b7304dd8f)
init version: N/A (expected: 949e6facb77383876aeff8a6944dde66b3089574)
Security Options:
seccomp
WARNING: You're not using the default seccomp profile
Profile: /etc/docker/seccomp.json
selinux
Kernel Version: 4.13.-.fc27.x86_64
Operating System: Fedora (Twenty Seven)
OSType: linux
Architecture: x86_64
Number of Docker Hooks:
CPUs:
Total Memory: 3.751 GiB
Name: NUC
ID: NYPV:TP7N:ONGH:JMSH:TKFL:WEDA:YKPF:C6AG:CBIJ:3NEL:IZKB:JHLT
Docker Root Dir: /storage/docker #这里是我改的docker存储位置
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Experimental: false
Insecure Registries:
127.0.0.0/
Registry Mirrors:
http://********.daocloud.io #这里是我加的镜像地址。
Live Restore Enabled: false
Registries: docker.io (secure), registry.fedoraproject.org (secure), registry.access.redhat.com (secure), docker.io (secure)
[root@NUC ~]#
5.解决一些警告
我在这次更新的时候是使用了fedora31 server 并且使用19.03.8版docker-ce
在info给我一堆警告
WARNING: No swap limit support
WARNING: No kernel memory limit support
WARNING: No kernel memory TCP limit support
WARNING: No oom kill disable support
WARNING: No cpu cfs quota support
WARNING: No cpu cfs period support
WARNING: No cpu shares support
安装grubby 并配置一下即可解决这些警告。并顺利启动docker的内存,CPU限制功能。
dnf install grubby (官方没写,我的fedora31 安装完成后没有grubby命令,需要安装一下)
grubby --update-kernel=ALL --args="systemd.unified_cgroup_hierarchy=0"
6.把docker加入开机启动
systemctl enable docker (取消的化 systemctl disable docker)
至此,安装完成,配置存储位置,配置镜像地址完成。
7.安装daocloud控制
登录daocloud.io,进入控制台,自有主机,添加主机。
复制安装主机监控程序的代码,到你的linux执行一下。
curl -sSL https://get.daocloud.io/daomonit/install.sh | sh -s **************b75a4b0a8f4d8d794ac4b8a6ac4 这是我的。
用petty登录,可以粘贴命令。
运行一会儿,daocloud就恭喜你接入成功了。
至此,docker的基本安装配置就结束了。