文章目录
写在前面
当你对某一事物缺乏了解和认识时,就很有可能会犯错。
老猪我想通过这篇文章,让刚刚接触 docker 的朋友们少走一些弯路,安装应用不再那么磕磕绊绊的。
注意事项
-
请以
/xxx/.../应用名称/子目录名称的命名规则存放应用的数据有些朋友的应用数据存放路径五花八门,这样非常不利于后期的维护
老猪我在这里提供一个思路,假设安装portainer和mariadb两个应用。
安装portainer需要创建的子目录有data
安装mariadb需要创建的子目录有etcdatafor Linux:
/opt/docker/portainer/data /opt/docker/mariadb/etc /opt/docker/mariadb/datafor 群晖 NAS:
# /volume1/docker 是群晖 docker 套件默认创建的数据存放目录 /volume1/docker/portainer/data /volume1/docker/mariadb/etc /volume1/docker/mariadb/data -
创建应用的数据目录时确保读写权限正确
有些朋友安装的 docker 不是以
ROOT身份运行的,而创建应用数据目录时却又使用ROOT身份,于是 docker 应用因为没有读写权限而陷入无限重启。我是小白,我怎么知道 docker 是以什么身份运行的?
运行以下命令并查看运行结果第一列
ps -ef |grep -i dockerd |grep -v grep运行结果:
root 1597 1 0 5月15 ? 00:06:59 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock为什么我执行这个命令查不到东西?
在某些设备上的 docker 进程可能使用其它名称,例如群晖
DS918+可以使用以下命令查询ps -ef |grep -i docker |grep -v grep运行结果:
root 21790 1 0 May21 ? 00:00:00 /var/packages/Docker/target/termd/termd -d如果 docker 以非
ROOT身份运行,例如身份是docker,如何修改应用的数据目录权限?以
ROOT身份运行以下命令chown docker -R '应用的数据目录'
写在最后
本文会不断更新,收录更多需要新手注意的问题,建议收藏。
如果你在使用 docker 时遇到问题,也欢迎在下面留言给我。