说明:
恩山论坛的flippy大侠推出的"55+、55+O S905x3、S922x、贝壳云、我家云、微加云等OP固件"内置了Docker CE容器(服务-Docker CE容器), 但Docker并不可用. 在Docker CE容器主页面下, 提供了内置的"Docker 初始化无脑配置教程"链接(一个PDF文件), 按照教程说明, 可以简单的把Docker环境搭建完成.
环境说明:
TF卡中只用不到1G空间被op系统占用, 剩下的分成了一个exfat的主分区.
操作步骤:
操作步骤大致按照"Docker 初始化无脑配置教程", 但略有些不同.
1. 给Docker分配存储空间
由于原来剩余空间都给了exfat主分区, 所以只能重新分配空间.
本想通过调整分区大小来分出部分空间给Docker, 但试了Win10的"硬盘管理"+"分区助专业版", 发现都不能把exfat分区的空间调小, 所以只能重新分配空间.
a.先备份exfat分区文件
b.TF卡重新分区
把TF卡插回Q7的TF卡槽, tf卡启动Q7后, 用SecureCRT登录进去:
a.1 使用fdisk命令删除原exfat分区
a.2 使用fdisk重分两个分区, 一个exfat分区, 一个ext4分区.
考虑到Docker可能不会占用多少空间, 给ext4分了10G的空间.
(exfat分区的类型代码是7)
a.3 格式化(mkfs命令)
# 格式化exfat分区
# mkfs.exfat /dev/sda3
# 格式化ext4分区
# mkfs.ext4 /dev/sda4
注意: 如果分区已经mount上就不能格式化, 会显示格式化失败信息.
这种情况需要umount, 如下:
# umount /dev/sda3
相应的教程内容, 执行的shell功能就是分区+格式化
c.挂载(mount)新分区
把新的ext4分区挂载(mount)到/opt下, 做为Docker的空间.
与mount有关的配置文件有/etc/mtab + /etc/fstab, /etc/fstab是启动时的挂载配置文件.
相应的教程内容, 实现新分区挂载到/opt
按教程操作完成挂载后, 查看/etc/fstab文件, 并没有看到/opt的挂载信息, 不清楚具体是在哪里配置的.
用mount命令查看, 可以看到已经挂载到/opt下了
# cat /etc/docker-web
#!/bin/sh
docker run -d --restart=always --name="portainer" -p 9999:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce
docker-web是用来安装docker的web管理系统, 执行前需要先确认下docker是否已启动, 如果没有启动, docker-web的安装会失败, 如下:
# ./docker-web
docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?.
See 'docker run --help'.
使用service命令确认docker运行状态
# service dockerd statusinactive
如果发现docker未启动, 则先启动docker
# service dockerd start
再次确认docker运行状态
# service dockerd status
running
确认docker运行后, 可以执行docker-web进行安装
# ./docker-web
Unable to find image 'portainer/portainer-ce:latest' locally
latest: Pulling from portainer/portainer-ce
84cfa456b2b1: Pull complete
39d56ef0881a: Pull complete
16a45878c700: Pull complete
Digest:
Status: Downloaded newer image for portainer/portainer-ce:latest
3. 进入Docker管理界面
在浏览器里输入Q7的ip地址:9999, 设置管理员密码, 选择local进入本地管理界面
问题
1. Docker的配置文件有问题, 需要修改
# cat /etc/docker/daemon.json
{
"bip": "172.31.0.1/24",
"data-root": "/mnt/mmcblk2p4/docker/",
"log-level": "warn",
"log-driver": "json-file",
"log-opts": {
"max-size": "10m",
"max-file": "5"
},
"registry-mirrors": [
"https://dockerhub.azk8s.cn"
]
}
其中data-root所指/mnt/mmcblk2p4不存在, 由于给docker分配的空间是/opt, 因此考虑把data-root所指目录改到/opt/docker/下
评论