六、初识‘Docker’
Docker 是一个开源的容器化平台,用于构建、打包和部署应用程序。Docker 的核心概念是容器,它是一个轻量级、可移植的虚拟化单元,其中包含了运行应用程序所需的所有文件、库和依赖项。通过 Docker,可以创建、启动、停止和删除容器,并通过容器间的链接和共享资源来管理和组织应用程序。使用 Docker,可以加快应用程序的开发、测试和部署过程,提高应用程序的可移植性和可扩展性,并简化了在不同环境中运行应用程序的复杂性。
1.使用‘海纳思’内置脚本安装Docker。
install-docker.sh
2.存储优化,使用软连接的方法将Docker移动到外置存储。
2.1 检索 Docker 的根目录路径。
docker info | grep "Docker Root Dir"
终端返回:
……
Docker Root Dir: /var/lib/docker
表示 Docker 的根目录路径是/var/lib/docker
。请根据自己的实际路径完成下面操作。
2.2 停止 Docker 服务。
systemctl stop docker
systemctl stop docker.socket
2.3 在外置存储设备中创建一个docker文件夹。本人使用的扩容设备是TF卡,如使用U盘扩容的请用sda1
替换文中的mmcblk1p1
。
mkdir -p /mnt/mmcblk1p1/docker
2.4 将/mnt/mmcblk1p1/docker
目录及其所有子目录和文件的权限修改为读、写、执行权限对所有用户开放。
chmod -R 777 /mnt/mmcblk1p1/docker/
2.5 将/var/lib/docker
目录下的所有文件和子目录复制到/mnt/mmcblk1p1/docker
目录中。
cp -r /var/lib/docker/* /mnt/mmcblk1p1/docker
2.6 使用ls
命令比较两个文件夹的内容,确认复制已经完成。
查看外置存储:ls /mnt/mmcblk1p1/docker/
查看内置存储:ls /var/lib/docker/
2.7 将/mnt/mmcblk1p1/docker
目录及其所有子目录和文件的权限修改为读、写、执行权限对所有用户开放。
chmod -R 777 /mnt/mmcblk1p1/docker
2.8删除/var/lib/docker/
目录下的所有文件和子目录以及本身。
rm -rf /var/lib/docker/*
rm -rf /var/lib/docker
2.9 为/var/lib
目录中创建一个指向/mnt/mmcblk1p1/docker
目录的软链接。
ln -s /mnt/mmcblk1p1/docker /var/lib
2.10 重启Docker。
sudo systemctl restart docker
2.11 此时输入docker info | grep "Docker Root Dir"
检索 Docker 的根目录路径,已经是我们修改的路径了。
……
Docker Root Dir: /mnt/mmcblk1p1/docker
3.部署第一个应用,使用‘海纳思’内置脚本为Docker安装图形化管理界面。
install-portainer.sh