Skip to content

Commit 0e5f984

Browse files
committed
pt(installation): translate security-checklists, windows, docker, linux
1 parent f8f6301 commit 0e5f984

File tree

4 files changed

+276
-350
lines changed

4 files changed

+276
-350
lines changed

docs/pt/installation/docker.md

Lines changed: 121 additions & 146 deletions
Original file line numberDiff line numberDiff line change
@@ -1,49 +1,45 @@
11
---
2-
title: "Docker 安装 RustFS"
3-
description: "RustFS Docker 部署。"
2+
title: "Instalar RustFS com Docker"
3+
description: "Implantação do RustFS via Docker"
44
---
55

6-
# Docker 安装 RustFS
7-
8-
6+
# Instalar RustFS com Docker
97

8+
RustFS é um armazenamento de objetos distribuído de alto desempenho, 100% compatível com S3. No modo SNSD (single node, single disk), não há redundância adicional (sem EC), adequado para testes locais e cenários pequenos.
9+
Este guia usa o binário oficial para Linux como base e empacota num contêiner via Dockerfile, configurando volumes e variáveis de ambiente para iniciar o serviço.
1010

11+
---
1112

12-
RustFS 是一款高性能、100% 兼容 S3 的开源分布式对象存储系统。单节点单盘(SNSD)部署模式下,后端采用零纠删校验,不提供额外的数据冗余,适合本地测试与小规模场景。
13-
本文以 RustFS 官方 Linux 二进制包为基础,通过自定义 Dockerfile ,将 RustFS 及其运行时环境打包进容器,并配置数据卷与环境变量,即可一键启动服务。
13+
## 1. Pré‑requisitos
1414

15-
---
15+
1) Requisitos da máquina
1616

17-
## 一、前置准备
17+
- Docker ≥ 20.10 instalado e funcional
18+
- Diretório local `/mnt/rustfs/data` (ou personalizado) para dados
1819

19-
1. **主机要求**
20+
2) Rede e firewall
2021

21-
* 已安装 Docker(≥ 20.10)并能正常拉取镜像与运行容器
22-
* 本地路径 `/mnt/rustfs/data`(或自定义路径)用于挂载对象数据
23-
2. **网络与防火墙**
22+
- Garanta a abertura da porta 9000 (ou porta escolhida)
2423

25-
* 确保宿主机 9000 端口对外开放(或自定义端口一致)
26-
3. **配置文件准备**
24+
3) Ficheiro de configuração
2725

28-
* 在宿主机 `/etc/rustfs/config.toml` 中,定义监听端口、管理员账号、数据路径等(详见第四节)
26+
- Em `/etc/rustfs/config.toml`, defina porta, credenciais admin, diretórios de dados, etc.
2927

3028
---
3129

32-
## 二、快速拉取 RustFS 官方镜像
33-
34-
使用官方 Ubuntu 基础镜像,快速拉取 RustFS 官方镜像:
30+
## 2. Obter a imagem oficial
3531

32+
Usando base Ubuntu, puxe a imagem oficial do RustFS:
3633

3734
```bash
3835
docker pull rustfs/rustfs
39-
4036
```
4137

4238
---
4339

44-
## 三、编写环境配置
40+
## 3. Configuração do ambiente
4541

46-
在宿主机创建配置文件 `/etc/rustfs/config.toml`,示例内容:
42+
Crie `/etc/rustfs/config.toml` no host. Exemplo de variáveis:
4743

4844
```bash
4945
RUSTFS_ACCESS_KEY=rustfsadmin
@@ -56,33 +52,33 @@ RUSTFS_OBS_ENDPOINT=""
5652
RUSTFS_TLS_PATH="/opt/tls"
5753
```
5854

59-
> **说明:** 配置项格式及默认值请参见官方 Linux 安装文档。
55+
> Nota: veja a documentação de instalação Linux para defaults e formatos.
6056
6157
---
6258

63-
## 四、运行 RustFS 容器
59+
## 4. Executar o contêiner RustFS
6460

65-
RustFS SNSD Docker 运行方式,结合上述镜像与配置,执行:
61+
Execução típica do SNSD com a imagem e configuração acima:
6662

6763
```bash
68-
docker run -d \
64+
docker run -d \
6965
--name rustfs_local \
7066
-p 9000:9000 \
7167
-v /mnt/rustfs/data:/data \
7268
rustfs/rustfs:latest \
7369
/data
7470
```
7571

76-
各参数说明:
72+
Parâmetros:
7773

78-
* `-p 9000:9000`:映射宿主机 9000 端口到容器
79-
* `-v /mnt/rustfs/data:/data`:挂载数据卷
80-
* `--name rustfs_local`:容器自定义名称
81-
* `-d`:后台运行
74+
- `-p 9000:9000`: mapeia porta 9000
75+
- `-v /mnt/rustfs/data:/data`: monta volume de dados
76+
- `--name rustfs_local`: nome do contêiner
77+
- `-d`: em background
8278

8379
---
8480

85-
### 完整参数配置示例
81+
### Exemplo com parâmetros completos
8682

8783
```bash
8884
docker run -d \
@@ -102,121 +98,100 @@ docker run -d \
10298
/data
10399
```
104100

105-
### 参数说明与对应方法
106-
107-
1. **环境变量方式** (推荐):
108-
```bash
109-
-e RUSTFS_ADDRESS=:9000 \
110-
-e RUSTFS_SERVER_DOMAINS=example.com \
111-
-e RUSTFS_ACCESS_KEY=rustfsadmin \
112-
-e RUSTFS_SECRET_KEY=rustfsadmin \
113-
-e RUSTFS_CONSOLE_ENABLE=true \
114-
```
115-
116-
2. **命令行参数方式**:
117-
```
118-
--address :9000 \
119-
--server-domains example.com \
120-
--access-key rustfsadmin \
121-
--secret-key rustfsadmin \
122-
--console-enable \
123-
```
124-
125-
3. **必需参数**:
126-
- `<VOLUMES>`: 在命令最后指定,如 `/data`
127-
128-
### 常用配置组合
129-
130-
1. **基础配置**:
131-
```bash
132-
docker run -d \
133-
-p 9000:9000 \
134-
-v /mnt/data:/data \
135-
rustfs/rustfs:latest \
136-
/data
137-
```
138-
139-
2. **启用控制台**:
140-
```bash
141-
docker run -d \
142-
-p 9000:9000 \
143-
-v /mnt/data:/data \
144-
-e RUSTFS_CONSOLE_ENABLE=true \
145-
rustfs/rustfs:latest \
146-
./target/debug/rustfs \
147-
--console-enable \
148-
/data
149-
```
150-
151-
3. **自定义认证密钥**:
152-
```bash
153-
docker run -d \
154-
-p 9000:9000 \
155-
-v /mnt/data:/data \
156-
-e RUSTFS_ACCESS_KEY=rustfsadmin \
157-
-e RUSTFS_SECRET_KEY=rustfsadmin \
158-
rustfs/rustfs:latest \
159-
./target/debug/rustfs \
160-
--access-key rustfsadmin \
161-
--secret-key rustfsadmin \
162-
/data
163-
```
164-
165-
### 注意事项
166-
167-
1. 端口映射要对应:
168-
- 服务端口默认 9000 (`-p 9000:9000`)
169-
170-
2. 数据卷要持久化:
171-
- `-v /host/path:/container/path`
172-
173-
3. 环境变量和命令行参数可以混合使用,但命令行参数优先级更高
174-
175-
4. 如果使用 TLS,需要额外挂载证书路径:
176-
```bash
177-
-v /path/to/certs:/certs \
178-
-e RUSTFS_TLS_PATH=/certs \
179-
```
180-
181-
## 五、验证与访问
182-
183-
1. **查看容器状态与日志:**
184-
185-
```bash
186-
docker logs rustfs_local
187-
```
188-
189-
日志应显示服务启动成功,并监听 9000 端口。
190-
191-
2. **测试 S3 API:**
192-
193-
使用 `mc` 或其他 S3 客户端:
194-
195-
```bash
196-
mc alias set rustfs http://localhost:9000 rustfsadmin ChangeMe123!
197-
mc mb rustfs/mybucket
198-
mc ls rustfs
199-
```
200-
201-
如能成功创建并列举 bucket,则部署生效。
202-
203-
204-
## 六、其他建议
205-
206-
1. 生产环境建议:
207-
- 使用多节点部署架构
208-
- 启用 TLS 加密通信
209-
- 配置日志轮转策略
210-
- 设置定期备份策略
211-
212-
2. 存储建议:
213-
- 使用本地 SSD/NVMe 存储
214-
- 避免使用网络文件系统 (NFS)
215-
- 保证存储目录独占访问
101+
### Métodos de configuração
102+
103+
1) Variáveis de ambiente (recomendado):
104+
```bash
105+
-e RUSTFS_ADDRESS=:9000 \
106+
-e RUSTFS_SERVER_DOMAINS=example.com \
107+
-e RUSTFS_ACCESS_KEY=rustfsadmin \
108+
-e RUSTFS_SECRET_KEY=rustfsadmin \
109+
-e RUSTFS_CONSOLE_ENABLE=true \
110+
```
111+
112+
2) Parâmetros de linha de comando:
113+
```
114+
--address :9000 \
115+
--server-domains example.com \
116+
--access-key rustfsadmin \
117+
--secret-key rustfsadmin \
118+
--console-enable \
119+
```
120+
121+
3) Parâmetros obrigatórios:
122+
- `<VOLUMES>`: no fim do comando, ex.: `/data`
123+
124+
### Combinações comuns
125+
126+
1) Configuração básica:
127+
```bash
128+
docker run -d \
129+
-p 9000:9000 \
130+
-v /mnt/data:/data \
131+
rustfs/rustfs:latest \
132+
/data
133+
```
134+
135+
2) Ativar console:
136+
```bash
137+
docker run -d \
138+
-p 9000:9000 \
139+
-v /mnt/data:/data \
140+
-e RUSTFS_CONSOLE_ENABLE=true \
141+
rustfs/rustfs:latest \
142+
./target/debug/rustfs \
143+
--console-enable \
144+
/data
145+
```
146+
147+
3) Chaves de autenticação personalizadas:
148+
```bash
149+
docker run -d \
150+
-p 9000:9000 \
151+
-v /mnt/data:/data \
152+
-e RUSTFS_ACCESS_KEY=rustfsadmin \
153+
-e RUSTFS_SECRET_KEY=rustfsadmin \
154+
rustfs/rustfs:latest \
155+
./target/debug/rustfs \
156+
--access-key rustfsadmin \
157+
--secret-key rustfsadmin \
158+
/data
159+
```
160+
161+
### Notas
162+
163+
1) Portas mapeadas corretamente (padrão 9000)
164+
2) Volumes persistentes `-v /host:/container`
165+
3) Pode misturar env + CLI, mas CLI tem prioridade
166+
4) Para TLS, monte certificados:
167+
```bash
168+
-v /path/to/certs:/certs \
169+
-e RUSTFS_TLS_PATH=/certs \
170+
```
171+
172+
## 5. Verificação e acesso
173+
174+
1) Estado e logs do contêiner:
175+
```bash
176+
docker logs rustfs_local
177+
```
178+
Deve indicar sucesso e escuta na porta 9000.
179+
180+
2) Testar S3 API (ex.: `mc`):
181+
```bash
182+
mc alias set rustfs http://localhost:9000 rustfsadmin ChangeMe123!
183+
mc mb rustfs/mybucket
184+
mc ls rustfs
185+
```
186+
Se criar e listar buckets, a implantação está ok.
187+
188+
## 6. Recomendações
189+
190+
- Produção: multi‑nó, TLS, rotação de logs, backups periódicos
191+
- Armazenamento: SSD/NVMe local, evitar NFS, acesso exclusivo ao diretório de dados
216192

217193
---
218194

219-
## 小结
195+
## Resumo
220196

221-
本文结合 RustFS 单节点单盘容器化最佳实践,详细演示了如何通过 Docker 自行构建 RustFS 镜像并部署 SNSD 环境。
222-
该方案易于快速启动与试验,后续可在 Kubernetes、Swarm 等平台上采用同样思路扩展为多节点多盘生产级集群。
197+
Este guia demonstrou como empacotar e executar o RustFS em modo SNSD via Docker para arranque rápido. Posteriormente, pode evoluir para MNMD em plataformas como Kubernetes/Swarm.

0 commit comments

Comments
 (0)