更新 NAS-To-Linux-Docker.md
This commit is contained in:
@@ -1,26 +1,27 @@
|
|||||||
# Intro
|
# Intro
|
||||||
|
|
||||||
本文将介绍如何把 NAS 主机目录挂载到 Linux 主机,并且通过 Volume 挂载到 Docker 容器里。相当于给 Docker 容器挂了个云盘而不是本地盘去存储数据,借助 NAS 的阵列盘实现高可靠数据存储。
|
本文介绍如何把 NAS 主机目录挂载到 Linux 主机,并通过 Volume 挂载到 Docker 容器,借助 NAS 的阵列盘实现高可靠数据存储。
|
||||||
|
|
||||||
## 第一步、挂载到 Linux
|
|
||||||
|
|
||||||
- NAS:"/vol1/workspace"
|
- NAS:"/vol1/workspace"
|
||||||
- Linux:"/mnt/nas/vol1/workspace"
|
- Linux:"/mnt/nas/vol1/workspace"
|
||||||
|
- Docker:"/workspace"
|
||||||
|
|
||||||
假设要把 NAS 的"/vol1/workspace"挂载到 Linux 的 "/mnt/nas/vol1/workspace"。
|
假设 NAS 的用户名密码是"admin/123456",IP为"192.168.1.100",目录映射目标:"/vol1/workspace" -> "/mnt/nas/vol1/workspace" -> "/workspace"。
|
||||||
|
|
||||||
### 基于 NFS 协议(推荐)
|
## 方案一、基于 NFS 协议(推荐)
|
||||||
|
|
||||||
|
假设 NAS、Linux、Docker 都用 UID=1000 的用户运行。
|
||||||
|
|
||||||
1. 安装相关工具:
|
1. 安装相关工具:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Debian/Ubuntu
|
# Debian/Ubuntu
|
||||||
sudo apt update && sudo apt install nfs-common -y
|
sudo apt update && sudo apt install nfs-common -y
|
||||||
# CentOS/RHE
|
# CentOS/RHEL
|
||||||
sudo yum install nfs-utils
|
sudo yum install nfs-utils
|
||||||
```
|
```
|
||||||
|
|
||||||
2. 创建本地挂载点
|
2. 创建挂载点
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
sudo mkdir -p /mnt/nas/vol1/workspace
|
sudo mkdir -p /mnt/nas/vol1/workspace
|
||||||
@@ -29,8 +30,7 @@ sudo mkdir -p /mnt/nas/vol1/workspace
|
|||||||
3. 执行挂载
|
3. 执行挂载
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# 假设 NAS 的 IP 是"192.168.1.100"
|
sudo mount -t nfs -o uid=1000,gid=1000 192.168.1.100:/vol1/workspace /mnt/nas/vol1/workspace
|
||||||
sudo mount -t nfs 192.168.1.100:/vol1/workspace /mnt/nas/vol1/workspace
|
|
||||||
```
|
```
|
||||||
|
|
||||||
4. 设置开机自动挂载(可选)
|
4. 设置开机自动挂载(可选)
|
||||||
@@ -45,7 +45,13 @@ sudo nano vi /etc/fstab
|
|||||||
192.168.1.100:/vol1/workspace /mnt/nas/vol1/workspace nfs defaults,_netdev 0 0
|
192.168.1.100:/vol1/workspace /mnt/nas/vol1/workspace nfs defaults,_netdev 0 0
|
||||||
```
|
```
|
||||||
|
|
||||||
### 基于 SMB 协议
|
5. 挂载到 Docker 容器
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -v /mnt/nas/vol1/workspace:/workspace <镜像名>
|
||||||
|
```
|
||||||
|
|
||||||
|
## 方案二、基于 SMB 协议
|
||||||
|
|
||||||
1. 安装 CIFS 客户端工具
|
1. 安装 CIFS 客户端工具
|
||||||
|
|
||||||
@@ -55,3 +61,33 @@ sudo apt update && sudo apt install cifs-utils -y
|
|||||||
# CentOS/RHEL
|
# CentOS/RHEL
|
||||||
sudo yum install cifs-utils -y
|
sudo yum install cifs-utils -y
|
||||||
```
|
```
|
||||||
|
|
||||||
|
2. 创建挂载点
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo mkdir -p /mnt/nas/vol1/workspace
|
||||||
|
```
|
||||||
|
|
||||||
|
3. 执行挂载
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo mount -t cifs //192.168.1.100/vol1/workspace /mnt/nas/vol1/workspace -o username=admin,password=123456
|
||||||
|
```
|
||||||
|
|
||||||
|
4. 设置开机自动挂载(可选)
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo nano vi /etc/fstab
|
||||||
|
```
|
||||||
|
|
||||||
|
在文件末尾追加一行:
|
||||||
|
|
||||||
|
```text
|
||||||
|
//192.168.1.100/vol1/workspace /mnt/nas/vol1/workspace cifs username=admin,password=123456,iocharset=utf8 0 0
|
||||||
|
```
|
||||||
|
|
||||||
|
5. 挂载到 Docker 容器
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -v /mnt/nas/vol1/workspace:/workspace <镜像名>
|
||||||
|
```
|
||||||
Reference in New Issue
Block a user